2009-11-21 14 views

Respuesta

4

Usted podría utilizar XText:

un marco para el desarrollo de dominio textual lenguajes específicos (DSLs).
Simplemente describa su propio DSL usando el lenguaje gramatical simple EBNF de Xtext y el generador creará un analizador sintáctico, un modelo AST-meta (implementado en EMF) así como un editor de texto Eclipse con todas las funciones.

alt text

1

Alternativas a xtext son Rascal o Spoofax, tanto menos popular que xtext pero interesante para los que apoyan las gramáticas libres de contexto más general, entre otras cosas. Es bueno echarle un vistazo.

1

Si está buscando una solución programable de bajo nivel, la plataforma de meta-herramientas IDE de Eclipse es una buena opción (IMP).

Lo que IMP le da es API para conectar sus analizadores existentes a Eclipse sin mucha molestia. Debe implementar una interfaz IParseController, para llamar a su analizador y ITokenIterator para producir tokens y otra interfaz para asignar fuentes a cada tipo de token.

Los antes mencionados Rascal y Spoofax se encuentran en la parte superior de IMP.

+0

Desde la página de IMP http://www.eclipse.org/imp/ se ve que IMP se basa en Rascal. Y no salió de la incubadora. –

+0

IMP no está basado en Rascal, sino que Rascal se basa en IMP. De hecho, no tiene una gran comunidad, pero al menos dos proyectos la están utilizando intensamente. El núcleo de IMP no es una gran cosa, lo que hace que sea fácil de usar en un entorno donde ya tiene un compilador abierto y solo quiere conectarlo a un IDE. – jurgenv

+0

BTW, IMP ahora se encuentra en github: https://github.com/impulse-org/imp.runtime?source=cc – jurgenv

Cuestiones relacionadas