Por lo que siempre me han comentado mis amigos ingenieros informáticos, compiladores es una de las asignaturas más complicadas de la carrera. Libros clásicos que hablen de esta complicada rama de la informática los hay muy buenos como el clásico del Dragón, Compilers: Principles, Techniques and Tools. Existen herramientas como yacc o lex que ayudan en esta tarea. Sin embargo esto no quita que estemos ante una materia complicada si se quiere conocer este área de conocimiento.
Hace unos días, en Reddit, encontré un artículo titulado Want to Write a Compiler? Just Read These Two Papers.. En el mismo hay dos referencias muy interesantes sobre compiladores. La primera es a una serie de quince artículos escritos por Jack Crenshaw titulada Let's Build a Compiler. La segunda referencia es A Nanopass Framework for Compiler Education. Estos dos artículos pueden servir como una introducción para quien tenga curiosidad por conocer esta rama de la informática.
Los artículos de Jack Crenshaw construyen un compilador de una sola pasada, con el análisis de código fuente y la generación de código mezcladas y con optimizaciones básicas. El segundo artículo, intenta implementar un compilador como un conjunto de transformaciones sencillas. Tendré que mirarlos, aunque sólo sea por curiosidad de este mundillo (y si, tengo el libro del dragón, desde finales de los 90 sirviendo de un caro pisapapeles :) )
No hay comentarios:
Publicar un comentario