Parte del conjunto de herramientas de maquetación de documentos Unix troff , eqn es un preprocesador que formatea ecuaciones para su impresión. Un programa similar, neqn , aceptaba la misma entrada que eqn, pero producía una salida optimizada para verse mejor en nroff . El programa eqn fue creado en 1974 por Brian Kernighan y Lorinda Cherry . Fue implementado utilizando el compilador-compilador yacc . [ 1 ]
El lenguaje de entrada utilizado por eqn permite al usuario escribir expresiones matemáticas de forma muy similar a como se pronunciarían en voz alta. El lenguaje se define mediante una gramática libre de contexto , junto con reglas de precedencia y asociatividad de operadores . [ 2 ] El lenguaje eqn es similar al componente matemático de TeX , que apareció varios años después, pero es más simple y menos completo.
GNU ha desarrollado una implementación independiente y compatible del preprocesador eqn como parte de groff , la versión de troff para GNU. Esta implementación amplía el lenguaje original añadiendo nuevas palabras clave como smallover y accent . mandoc , un compilador especializado para páginas man de UNIX , también incluye un analizador/formateador eqn independiente.
Historia
La ecuación se escribió utilizando el generador de analizadores sintácticos yacc . [ 1 ]
Ejemplos de sintaxis
Aquí se muestran algunos ejemplos escritos en la ecuación [ 3 ] (con equivalentes en TeX para comparar):
Los espacios son importantes en eqn; los tokens están delimitados únicamente por caracteres de espacio en blanco , tildes ~, llaves {} y comillas dobles "". Por lo tanto, resulta enf(pi r sup 2), mientras que es necesario para dar el objetivo previstof( pi r sup 2 ).
Referencias
- 1 2 3 "Especial UNIX: Profesores Kernighan y Brailsford" . Computerphile . 30 de septiembre de 2015. Archivado del original el 22 de diciembre de 2021.
- ↑ Kernighan, Brian W. ; Cherry, Lorinda L. (1975). "Un sistema para la composición tipográfica de matemáticas" . Communications of the ACM . 18 (3): 151– 157. doi : 10.1145/360680.360684 . S2CID 155801 .
- ↑ Kernighan, Brian W. ; Cherry, Lorinda (1978), Typesetting Mathematics — User's Guide (PDF) (2.ª ed.)
Enlaces externos
- Manual de composición tipográfica para matemáticas (Segunda edición)
- Página man de UNIX para neqn(1) en Wayback Machine (archivada el 8 de agosto de 2007)
- – Manual del programador de Plan 9 , Volumen 1
- – Manual de usuario de Linux – Comandos de usuario
- Troff
- Órdenes del Plan 9
- Stubs de Unix