14 puntos por xguru 2024-09-14 | 1 comentarios | Compartir por WhatsApp
  • Una herramienta para quienes quieren iniciar un nuevo proyecto de lenguaje de programación
    • Permite desarrollar extensiones de lenguaje para editores de código, compiladores e intérpretes de lenguajes de programación, e incluso nuevos editores de código

Funciones principales

  • Generador de analizadores sintácticos con macros: el léxico y la gramática sintáctica del lenguaje se especifican usando macros derivadas para tipos enum, y las variantes del enum representan tokens individuales y nodos con reglas de análisis sintáctico propias
  • Analizador sintáctico manual: la API permite desarrollar analizadores descendentes recursivos escritos a mano con lookahead ilimitado e integrarlos sin problemas con analizadores generados por macros
  • Tolerancia a errores: el analizador resultante es resistente a errores y puede construir árboles sintácticos a partir de código fuente incompleto
  • Framework de análisis semántico: incluye un analizador semántico integrado que gestiona cálculos arbitrarios bajo demanda sobre el árbol sintáctico en términos de atributos de referencia
  • Compilación incremental: parchea continuamente en memoria la representación estructural de la base de código en respuesta a ediciones incrementales del texto del archivo del usuario final. El procesamiento de cambios es rápido incluso en bases de código grandes
  • Cálculo en paralelo: diseñado específicamente tanto para programas multihilo como de un solo hilo
  • Compatibilidad con WebAssembly: compatible con targets wasm y especialmente con entornos de navegador
  • Formateador de código fuente: incluye herramientas para desarrollar programas formateadores de código que tienen en cuenta comentarios y líneas en blanco
  • Fragmentos de código anotados: proporciona una API para imprimir fragmentos de código fuente con resaltado de sintaxis y anotaciones para mostrar errores sintácticos y semánticos de la base de código en la terminal
  • API autosuficiente: proporciona una API autosuficiente, extensible y altamente configurable para desarrollar la parte frontend de compiladores de lenguajes de programación y extensiones de lenguaje para editores de código. No tiene dependencias de terceros aparte de la biblioteca estándar de Rust y el crate de macros

1 comentarios

 
halfenif 2024-09-14

Deirdre (irlandés: Deirdre [ˈdʲɛɾˠdʲɾʲə]) es la heroína trágica más conocida de la mitología irlandesa. Su historia forma parte del ciclo del Úlster.

La explicación en Wikipedia parece algo bastante impresionante.