Sig:
Introducción a los PEGs
Sup:
PARTE: APUNTES DE PROCESADORES
Ant:
Análisis Top Down Usando
Con:
Ind:
Análisis Descendente mediante Parsing Expresion Grammars en JavaScript
Subsecciones
Introducción a los PEGs
Syntax
Semantics
Implementing parsers from parsing expression grammars
Lexical Analysis
Left recursion
Referencias y Documentación
PEGJS
What is
Installation
El compilador de línea de comandos
Using it
Opciones: allowedStartRules
Opciones: output
Opciones: plugin
PEGjs Coffee Plugin
Instalación de pegjs-coffee-plugin
Ejemplo con Acciones Semánticas en Coffee
Véase También
cache
optimize
Un Ejemplo Sencillo
Donde
arithmetics.pegjs
main.js
Rakefile
Compilación
Asociación Incorrecta para la Resta y la División
Práctica: Eliminar Recursividad por la Izquierda
Sintáxis y Semántica de PEG.js
PEG Syntax
Rules Syntax
Initializers
Match Results
Parser Actions
Parsing Expression Types
La Gramática de PEG.js
Acciones Intermedias
Usando Predicados Semánticos
Usando Variable Sintáctica Intermedia
PegJS en los Browser
Donde
Versiones para Browser
La opción -e de pegjs
Compilación
calc.js
arithmetic.pegjs
calculator.html
Eliminación de la Recursividad por la Izquierda en PEGs
Eliminación Usando Operadores de Repetición
Donde
Un Esquema de Traducción Recursivo por la Izquierda
Métodología
Solución
Eliminado la Recursividad por la Izquierda en la Calculadora Usando Operadores de Repetición
Eliminación Usando Predicados Semánticos: Sólo Sintáxis
Eliminación de la Recursión por la Izquierda Incluyendo la Semántica
Atributos Heredados y PEGJS
Eliminado la Recursividad por la Izquierda en la Calculadora Usando Predicados Semánticos
Encapsulando la Solución
Reconocimiento de Lenguajes con PEGjs
PEGs versus Gramáticas
Dangling else
: Asociando un else con su if mas cercano
danglingelse.pegjs
use_danglingelse.js
Ejecución
Donde
Invirtiendo el orden de las Alternativas
Not Predicate: Comentarios Anidados
Pascal_comments.pegjs
use_pascal_comments.js
Ejecución
Donde
Un Lenguaje Dependiente del Contexto
Práctica: Analizador de PL0 Usando PEG.js
Práctica: Analizador de PL0 Ampliado Usando PEG.js
Donde
Tareas
Referencias para esta Práctica
Práctica: Ambiguedad en C++
Práctica: Inventando un Lenguaje: Tortoise
Recursos
Sig:
Introducción a los PEGs
Sup:
PARTE: APUNTES DE PROCESADORES
Ant:
Análisis Top Down Usando
Casiano Rodríguez León
2016-03-27