2009-09-16 21 views
5

Necesito generar el código Python para que sea más específico IronPyton. También necesito poder analizar el código y cargarlo en AST. Empecé a buscar algunas herramientas. Jugué con "Oslo" y tomé la decisión de que no es la herramienta correcta para mí. Solo miré muy brevemente al Coco/R y parece prometedor.Generar y analizar el código Python desde la aplicación C#

¿Alguien usó Coco/R?
Si lo hizo, ¿cuál es su experiencia con la herramienta? ¿Puedes recomendar alguna otra herramienta?

Respuesta

8

La implementación de IronPython en sí incluye a parser y an AST representation de los programas de Python que se pueden recorrer con un PythonWalker.

+0

Esa es una gran información para mí. +1 por ahora. Permítanme investigarlo y si lo hace por mí, creo que aceptaré su respuesta. – Vadim

0

Creo que debería mirar el Dynamic Language Runtime. Esta será una parte estándar de alguna versión posterior de .Net y C# (.Net 4 de memoria).

Lo he usado para compilar y ejecutar código Python generado en tiempo de ejecución, pero todavía no he jugado con todo el material AST.

+0

Miré DLR por eso quiero generar el código de IronPython que es un lenguaje DLR. Desafortunadamente, C# 4 no va a tener todas las características del lenguaje dinámico. Hasta ahora, solo puedes usar palabras clave dinámicas en C# 4. Pero en cualquier caso, no es mi pregunta. – Vadim

+0

Puede hacer todo lo que quiera ahora con IronPython y DLR. Sugiero que lea la página a la que me he vinculado en mi respuesta, ya que se trata específicamente de generar un AST a partir del código de Python. No necesita C# 4 para usar el DLR. Si usa IronPython 2.0 en adelante, ¡está utilizando el DLR! –

1

No es realmente mi área de especialización, pero es posible que desee probar ANTLR. Tiene soporte para generar Python.

Cuestiones relacionadas