Historias de los «abuelos» de la informática o los orígenes de la programación orientada a objetos

Por Francisco R. Villatoro, el 9 noviembre, 2008. Categoría(s): Ciencia • Historia • Informática • Personajes ✎ 1

Nuestro amigo JL me/nos recomienda una sugerente lectura para las frías tardes de otoño e invierno, relatos sobre la historia de la informática de mano de sus creadores en la página web del Instituto Charles Babbage (computer science oral histories). JL nos recomienda la entrevista a Don Knuth (70 años). Hablando de Algol y Algol 68 me viene a la memoria Simula y Simula 67. Es una pena que no aparezca una entrevista a Ole-Johan Dahl y/o Kristen Nygaard, ambos fallecidos en 2002 (29 de junio y 10 de agosto, respectivamente). ¿Eres informático y no sabes quiénes son? No me lo puedo creer. Me da pena que la historia de la informática en las Escuelas españolas se reduzca a hablar del ábaco, la pascalina, Babbage y el Eniac, cuando la historia de la informática son, básicamente, los últimos 10 lustros.

IEEE John Von Neumann Medal 2002.
IEEE John Von Neumann Medal 2002.

Dahl y Nygaard, en los 1950, mientras diseñaban un simulador de reactores nucleares observaron las grandes dificultades que requería dicha tarea con los lenguajes de la época. Necesitaban un nuevo lenguaje de programación que les facilitara la tarea. Crearon Simula I, un lenguaje para la simulación de eventos discretos mediante el método de Montecarlo programado en Algol 60, que incluía versiones primitivas del concepto de herencia, vinculación dinámica y concurrencia basada en tiempo compartido. Estos conceptos les llevaron a desarrollar una nueva metodología de programación y un nuevo lenguaje de propósito general, Simula 67. Este lenguaje influyó mucho en los creadores de SmallTalk, Eiffel (Simula 85), C++ o Ada (este último implementó un subconjunto de Simula). Dahl y Nygaard recibieron el Premio Turing de 2001 (el equivalente el Nobel de la Informática concedido por la ACM) por su labor como pioneros de la programación orientada a objetos. Dahl es coautor, con Dijskstra (entrevista) y Hoare (entrevista) del famosísimo y altamente recomendable a los jóvenes que estudian informática «Structured Programming,» Academic Press, 1972 .

Los interesados en la historia de Simula disfrutarán del artículo de Jan Rune Holmevik, «Compiling SIMULA: A Historical Study of Technological GenesisIEEE Annals of the History of Computing archive, 16: 25-37, 1994 . Los interesados en más detalles de la vida de Dhal y Nygaard pueden recurrir a su obituario en JOURNAL OF OBJECT TECHNOLOGY, dónde si no, «In memory of Ole-Johan Dahl and Kristen Nygaard,» escrito por Bertrand Meyer (padre de Eiffel).

Nota al margen: no todas las entrevistas en Oral History Database están disponibles electrónicamente «Transcript not available electronically. Please contact CBI.» En muchas me he encontrado con dicha sorpresa, espero que pronto la subsanen. ¡Quizás he buscado entrevistas a investigadores «poco» conocidos!

PS: «Structured Programming,» es un libro editado por Charles A. R. Hoare de sólo 3 capítulos. El primero «Notes on Structured Programming,» de Edsger W. Dijkstra, notas del autor para sí mismo sobre cómo escribir programas «estructurados» y cómo verificar su corrección; incluye demostraciones de la corrección de algoritmos tan interesantes como la resolución del problema de las ocho reinas. El segundo «Notes on Data Structuring,» de C. A. R. Hoare, introduce los conceptos modernos de la actual programación estructurada, como tipos, registros, punteros, programación recursiva, etc. Finalmente, el tercer y último capítulo «Hierarchical Program Structures,» Ole-Johan Dahl and C. A. R. Hoare, introduce la programación «estructurada» en Simula 67, con conceptos como clases de objetos, instancias de objetos, jerarquías (herencia) de clases, incluyendo varios ejemplos muy interesantes de esta programación «estructurada» a la hoy posiblemente llamarías programación orientada a objetos. 220 páginas que no tienen desperdicio. Sé de buena tinta que la mayoría de los estudiantes de informática no se atreverán a leerlo, quizás, por la misma razón por la que no se han atrevido a leer «Don Quijote de la Mancha,» de Miguel de Cervantes Saavedra.



1 Comentario

  1. Bonito artículo breve. Con más recomendaciones de lectura que pasan a la inmensa cola que acumulo desde que leo este blog ;-).

    Estudiar el ábaco en historia de la informática debe ser algo así como estudiar Stonehenge en la historia de la física. Obviable.

Deja un comentario