Pregunta

He estado buscando recientemente en Boost.Spirit (la versión incluida en Boost 1,39), sin embargo estoy muy confusa, a partir de los documentos por sí solos. Lo que estoy buscando es un ejemplo de un lenguaje de juguete implementado con Boost.Spirit - algo en la línea de una pequeña Javascript o Lua más o menos, en el que, básicamente, crea una AST y proceso. Sería feliz si sólo es compatible con la función / definición de las variables y los operadores básicos, sólo quiero ver cómo se crearía un AST normal usando Boost.Spirit, y cómo implementar reglas básicas como identificadores, declaraciones, etc.

Hasta ahora, he probado el ejemplo calculadora, pero no está claro para mí cómo implementar una gramática grande con el Espíritu. El ejemplo mini_c que se incluye, por otra parte parece bastante complicado ya, y no está muy bien documentada. ¿Hay alguna fácil de entender guía para Boost.Spirit por ahí, o tal vez un libro?

Otros consejos

La documentación Espíritu incluye ejemplos y tutoriales. Un ejemplo para generar una se incluye AST para un XML como mini lenguaje . Un presentación general de Joel de Guzmán y Hartmut Kaiser también está disponible.

Por favor, tenga en cuenta que hay una versión más reciente espíritu impulso con la completamente nuevo enfoque hacia la generación de AST.

El libro El Bibliotecas tiene un capítulo sobre el Espíritu que Yo he encontrado muy útil Boost C ++. Está disponible en línea, aquí hay un enlace directo:

Capítulo 11. Boost.Spirit

Usando Espíritu 2,3: Qi y Karma

Creo que este PDF es bastante bueno para los principiantes.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top