stringtranslate.com

Procesador de macros de propósito general

Un macroprocesador de propósito general o preprocesador de propósito general es un macroprocesador que no está vinculado ni integrado con un lenguaje o pieza de software en particular.

Un procesador de macros es un programa que copia un flujo de texto de un lugar a otro, realizando un conjunto sistemático de reemplazos a medida que lo hace. Los procesadores de macros suelen estar integrados en otros programas, como ensambladores y compiladores. A veces son programas independientes que se pueden utilizar para procesar cualquier tipo de texto.

Los macroprocesadores se han utilizado para la expansión del lenguaje (definiendo nuevas construcciones del lenguaje que se pueden expresar en términos de componentes del lenguaje existentes), para reemplazos sistemáticos de texto que requieren toma de decisiones y para reformatear texto (por ejemplo, extracción condicional de material de un archivo HTML ).

Ejemplos de macroprocesadores de propósito general

Véase también

Referencias

  1. ^ ab Strachey, Christopher (octubre de 1965). "Un macrogenerador de propósito general". Computer Journal . 8 (3): 225–241. doi : 10.1093/comjnl/8.3.225 .
  2. ^ Waite, William M. (julio de 1970). "El sistema de programación móvil: STAGE2". Comunicaciones de la ACM . 13 (7). Nueva York, NY, EE. UU.: ACM: 415–421. doi :10.1145/362686.362691.
  3. ^ Britten, Charles Randyl (26 de junio de 2020). "Traducción de código 8080 a 8086 - Traducción de Microsoft de código 8080 a 8086 y otros procesadores de 16 bits". Archivado desde el original el 23 de julio de 2021. Consultado el 28 de noviembre de 2021. Stage2 fue creado por el profesor William Waite en la Universidad de Colorado a finales de los años sesenta como un componente importante de su sistema de programación móvil, MPS. Stage2 utiliza un algoritmo de coincidencia de patrones para hacer coincidir las líneas de entrada de texto con un conjunto de plantillas. Cada plantilla es la primera línea de una macro y cuando se reconoce una coincidencia, el cuerpo del código de esa macro se procesa para producir texto de salida, mensajes de error o crear una línea construida que se envía para una mayor coincidencia de plantillas. Por lo tanto, el proceso es completamente recursivo y bastante potente en sus capacidades para la transformación de texto. De hecho, se puede utilizar para implementar un compilador de lenguaje de programación.
  4. ^ Cole, AJ (1981). Macro Processors (2.ª edición revisada). Archivo CUP. pág. 254.
  5. ^ Farber, DJ, 635 Sistema de ensamblaje - GAP. Centro de computación de los laboratorios Bell Telephone (1964).
  6. ^ "Gema". gema.sourceforge.net . Consultado el 21 de abril de 2017 .
  7. ^ "GPP". logological.org/gpp . Consultado el 21 de abril de 2017 .
  8. ^ "¡Bienvenido a la documentación de pyexpander! — Documentación de pyexpander 1.7.0". pyexpander.sourceforge.net . Consultado el 21 de abril de 2017 .
  9. ^ "akiwi - Text Assembler" (Akiwi: ensamblador de texto). www.akiwi.co.uk . Consultado el 21 de abril de 2017 .
  10. ^ Delord, Christophe. "PP - Un preprocesador genérico (con Pandoc en mente)". cdsoft.fr . Consultado el 17 de octubre de 2017 .
  11. ^ "minimac". freshmeat.net . Consultado el 21 de abril de 2017 .
  12. ^ "aa_macro" . Consultado el 24 de noviembre de 2017 .
  13. ^ "wtfm" . Consultado el 24 de noviembre de 2017 .