Un compilador nanopass es un compilador que maneja la complejidad de compilar lenguajes de programación con muchas características mediante la realización de múltiples pasadas pequeñas e iterativas, cada una de las cuales transforma un programa en una versión más simple del lenguaje de programación. [ 1 ] [ 2 ] [ 3 ]
El enfoque nanopass comenzó con Scheme , pero se ha aplicado a otros lenguajes, incluidos Resource Description Framework y APL . [ 4 ] Se desarrolló por primera vez para el compilador Chez Scheme . [ 2 ]
Los compiladores Nanopass se distinguen de otros compiladores multi-paso porque utilizan lenguajes intermedios explícitos que son subconjuntos más simples del lenguaje fuente. [ 5 ]
Debido a su comprensión más sencilla y a la menor curva de aprendizaje, los compiladores nanopass se utilizan en la enseñanza de la informática . [ 6 ]
Referencias
- ↑ Sarkar, Dipanwita; Waddell, Oscar; Dybvig, R. Kent (19 de septiembre de 2004). "Una infraestructura nanopass para la educación en compiladores" . ACM SIGPLAN Notices . 39 (9): 201– 212. doi : 10.1145/1016848.1016878 . ISSN 0362-1340 .
- 1 2 Keep, Andrew W.; Dybvig, R. Kent (25 de septiembre de 2013). "Un marco de nanopass para el desarrollo de compiladores comerciales" . ICFP '13: Actas de la 18.ª conferencia internacional ACM SIGPLAN sobre programación funcional . ACM: 343–350 . doi : 10.1145/2500365.2500618 . ISBN 978-1-4503-2326-0.
- ↑ Ringo, Nathan; Kramer, Lucas; Van Wyk, Eric (23 de octubre de 2023). «Gramáticas de atributos Nanopass» . SLE 2023: Actas de la 16.ª Conferencia Internacional ACM SIGPLAN sobre Ingeniería de Lenguajes de Software . ACM: 70–83 . doi : 10.1145/3623476.3623514 . ISBN 979-8-4007-0396-6.
- ↑ Guthrie, Duncan; Harvey, Paul; Sevegnani, Michele (2 de julio de 2026). "Un enfoque nanopass para una implementación modular de RDF" . SLE '26: Actas de la 19.ª Conferencia Internacional ACM SIGPLAN sobre Ingeniería de Lenguajes de Software . ACM: 22–33 . doi : 10.1145/3806383.3815514 . ISBN 979-8-4007-2639-2.
- ^ Reinders, Jaro S. (2023). Lämmel, Ralf; Mosses, Peter D.; Steimann, Friedrich (eds.). "Hacia la compilación modular utilizando efectos de orden superior" . Simposio Conmemorativo de Eelco Visser (EVCS 2023) . Serie de Acceso Abierto en Informática (OASIcs). 109 . Dagstuhl, Alemania: Schloss Dagstuhl – Leibniz-Zentrum für Informatik: 22:1–22:9. doi : 10.4230/OASIcs.EVCS.2023.22 . ISBN 978-3-95977-267-9.
- ↑ Sarkar, Dipanwita; Waddell, Oscar; Dybvig, R. Kent (septiembre de 2005). "PERLA EDUCATIVA: Un marco Nanopass para la enseñanza de compiladores" . Journal of Functional Programming . 15 (5): 653– 667. doi : 10.1017/S0956796805005605 . ISSN 1469-7653 .
Lecturas adicionales
- Keep, Andy (06/01/2014). Escribiendo un compilador Nanopass – vía YouTube.
- Construcción de compiladores