ÁRBOL-META


El sistema de escritura de traductores TREE-META (o Tree Meta , TREEMETA ) es un sistema compilador-compilador para lenguajes libres de contexto desarrollado originalmente en la década de 1960. Las declaraciones de análisis del metalenguaje se asemejan a la forma Backus-Naur aumentada con directivas de construcción de árboles integradas. Las reglas de Unparsing [1] incluyen construcciones extensas de exploración de árboles y generación de código.

TREE-META fue fundamental en el desarrollo del sistema en línea y se transfirió a muchos sistemas, incluidos Univac 1108, GE 645, SDS-940, ICL 1906A, PERQ y UCSD p-System . [2] [3]

Este es un ejemplo completo de un programa TREE-META extraído (y no probado) del ejemplo más completo (declaraciones, condicionales y bloques) en el Apéndice 6 del manual ICL 1900 TREE-META. [4] Ese documento también tiene una definición de TREE-META en TREE-META en el Apéndice 3. Este programa no es solo un reconocedor, sino que también genera el lenguaje ensamblador para la entrada. Demuestra una de las características clave de TREE-META, que es la coincidencia de patrones de árboles. Se utiliza tanto en LHS (GET y VAL, por ejemplo) como en RHS (ADD y SUB).