En realidad, quizás no sea un Lex/Yacc completo. Estoy implementando una interfaz de comando e intérprete para administrar una aplicación web. Estoy buscando algo que tome una definición de gramática y la convierta en un analizador que invoca directamente métodos en mi objeto. Similar a cómo ASP.NET MVC puede averiguar qué método de controlador invocar y cómo implementar los argumentos.Lex/Yacc para C#?
lo tanto, si el usuario escribe "crean foo" en mi símbolo del sistema, se debe llamar de forma transparente un método:
private void Create(string id) { /* ... */ }
Ah, y si se pudiera generar texto de ayuda a partir de (por ejemplo) los atributos de los los métodos del controlador, eso sería increíble, también.
Aunque los tokenizadores básicos son bastante fáciles de escribir, he hecho varios a lo largo de los años, todavía no son gratuitos si alguien ya hizo el trabajo. Además, sí, he considerado PowerShell. No estoy lo suficientemente familiar como para decidir si encaja bien o no. –
Consulte http://msdn.microsoft.com/en-us/library/ms714622.aspx para obtener información sobre los cmdlets. –
Sería bueno tener C++ CLI lex/yacc – Dmitry