El libro de Dijskstra, Hoare y Dahl, «Structured Programming,» Academic Press, 1972 , me ha hecho recordar el libro de Niklaus Wirth, «Algorithms + Data Structures = Programs,» Prentice-Hall, 1975 [traducido por Ediciones del Castillo, 1994]. Wirth empieza recordando que decidió escribir sus 366 páginas tras leer el libro anterior (colaboró con Hoare en 1966 en el desarrollo de ALGOL). Es un libro que yo leí hace años (como en 1988) y que todavía recuerdo. Sinceramente, creo que todo informático debería haberlo leído alguna vez en su vida. Estaba escrito en lenguaje Pascal, pero eso no importa, de hecho Wirth creó Pascal en parte para poder escribir un libro así.
En 1986, Wirth reescribió su libro en Modula-2, lenguaje también inventado por él, resultando Niklaus Wirth, «Algorithms and Data Structures,» Prentice-Hall, 1986 [traducido por Prentice-Hall, 1991]. Sin embargo, omitió en este libro el capítulo 5 sobre construcción de compiladores, cuya presentación de los diagramas de Conway aún recuerdo. Segundas partes nunca fueron buenas y, en mi opinión, el segundo libro perdió la frescura del primero.
¿Por qué quitó Wirth la parte de compiladores de su primer libro? Porque se dedicó a escribir Niklaus Wirth, «Compiler Construction,» Addison-Wesley, 1996 , breve pero efectivo libro sobre compiladores que presenta un pequeño compilador del lenguaje Oberon (también inventado por Wirth). Desafortunadamente no he leído este libro, luego no puedo comentar nada de él, tampoco he estudiado el lenguaje Oberon, así que no sé qué aporta respecto a Modula-2 o Modula-3.
Los diagramas de Conway los introdujo Melvin E. Conway, en «Design of a separable transition-diagram compiler,» Communications of the ACM, 6: 396-408, 1963, artículo donde presenta un compilador para el lenguaje COBOL. Dr. Java tiene un par de artículos sobre el tema en castellano que os gustarán: Sergio Gálvez Rojas, David Tinaquero Fernández, «Generación de Compiladores Mediante Diagramas de Conway,» Congreso Internacional de Informática Educativa ’99 (1999), y Sergio Gálvez Rojas, David Tinaquero Fernández, Antonio Guevara Plaza, Antonio Luis Carrillo León, «Generación Completa de Compiladores Mediante Diagramas de Sintaxis Extendidos,» 3er Simposium Internacional de Informática Educativa, Viseu, Portugal (2001).