Grace M. Hopper
El génesis de los lenguajes de programación
“El primer día que encontré una computadora en 1944, encontré a Babbage. El comandante Aiken tenía una copia
del libro de Babbage y por momentos nos aconsejaba que lo leyéramos. No
encontré el trabajo de Lovelace hasta 10 o 15 años más tarde”.
Grace
Murray Hopper
Un siglo después que Charles Babbage luchara para construir su prematura
máquina de computar, Grace Hopper aprendió a programar la primera
computadora digital de gran escala de Harvard, la Mark I, la realización conceptual de Babbage.
La teniente de la Marina de los EE. UU. Grace Hopper llegó a ser una pionera en
computación, como Charles Babbage o Ada Lovelace y una de las fuerzas motoras en el
desarrollo de lenguajes de programación, específicamente el COBOL.
Grace Brewster Murray nació el 9 de diciembre de
1906 en la ciudad de Nueva York. Era la hija mayor de un agente de seguros y su
esposa. Su madre amaba las matemáticas y siempre se interesaba en ella. Hija de
un ingeniero civil de la ciudad de Nueva York, la madre de Hopper acompañaba a su padre cuando hacía
trabajos de agrimensura en las calles de la ciudad. No por nada sus tres hijos
eran buenos en matemática.
Un notable suceso ocurrió en la vida de Grace Hopper a los 4 años de edad. Fue en Mayo de
1910 que el cometa Halley tuvo su aparición y era como cuatro veces más grande
y más brillante que la luna. Su padre la alzó para que lo pudiera ver por la
ventana de la cocina y quedó muy impresionada. El le dijo que lo volvería a ver
y ella deseaba que así ocurriera. El cometa Halley volvió a reaparecer en 1986.
Recordando su niñez como muy feliz, Hopper sin embargo notaba que ella era la
mayor y era a la que culpaban de todo. En una ocasión fue sorprendida con sus
primos trepada en un pino y como ella era la que estaba en la cima era obvio
quien había comenzado. Un motivo
importante de su felicidad eran los días que ella y su familia veraneaban en Wolfeboro, New Hampshire, donde
encontró a quien fuera luego su esposo, Vincent Foster Hopper, quien también
era de Nueva York y veraneaba allí.
Muy importante para su desarrollo futuro fue la
temprana educación de Grace Hopper en escuelas privadas, un hecho
considerado normal en aquéllos días. Su educación fue estricta considerada con
las normas de hoy. Tenían que pasar pruebas que demostraran que podían leer,
escribir inglés en forma clara y que podían deletrear. Cada verano debían leer veinte libros y escribir los resúmenes. Eran
educados con muchos conocimientos de base haciendo notar además que eso no les
daba inhibiciones sino que les hacía tener un gran interés por la lectura y la
historia.
Grace Hopper continuó su educación en el Vassar College, donde se graduó
premiada en 1928. Luego asistió a la Universidad de Yale donde se recibió en
1930, el año de su casamiento con Vincent Hopper. En 1934 recibió un Ph.D. de Yale y fue premiada con dos becas Sterling. Estos
premios académicos de Hopper fueron solamente los primeros en su vida que
estuvo llena de logros y más premios.
Desde 1931 hasta 1943 Hopper también enseñó en Vassar
en el Departamento de Matemática, ascendiendo de instructora a ayudante de
cátedra y finalmente catedrática asociada. Durante este período recibió un fellowship en la Facultad de Vassar
y estudio en la Universidad de Nueva York en el período 1941-1942. En 1943
Hopper fue profesora asistente de matemática en el Barnard College,
luego de lo cual se alistó en la Reserva Naval de los EE. UU. y asistió a la Escuela de Guardiamarinas USNR en Northampton,
Massachusetts. ¿Porqué se unió a la Marina? Había una guerra, explicaba y agregaba que no
era inusual en esos tiempos que una mujer se alistara en la marina ya que había
de 30.000 a 40.000 mujeres allí en esos tiempos. Después de la Segunda Guerra,
ella dijo que todas consiguieron casarse
y volver a casa, pero que luego demandaban por los empleos que habían dejado.
En cuanto a Hopper, ella también podría haber vuelto a casa pero había perdido
a su esposo en la guerra. Sin hijos para cuidar y plena de inspiración por
entonces se sintió enredada con las computadoras de la Marina y continuó de
lleno con su carrera. Después de graduarse como guardiamarina, Hopper fue comisionada al Proyecto de Computación
del Departamento de Municiones en la Universidad de Harvard donde ayudó a domar al “monstruo” de
Howard Aiken, la computadora Mark I
En gran parte financiado por un regalo de u$s 500.000 del presidente de IBM, Thomas Watson, la Mark I fue casi un accidente de la guerra
antes de que comenzara. Afortunadamente para la computación la Marina de
Guerra, en la cual Aiken era también un teniente, reconocieron el valor del dispositivo para
solucionar problemas navales y Aiken fue destacado para completar el trabajo.
Fue en Harvard que Hopper aprendió a programar al “monstruo”. En
1946 ella renunció a su permiso de estar ausente en Vassar
y unió en Harvard sus posibilidades como investigadora en ciencias de
ingeniería y física aplicada en el Laboratorio de Computación.
También fue allí que nació el término “debug”. En 1945 mientras estaba trabajando en un edificio
sin aire acondicionado, en un día caluroso y húmedo de verano, la computadora se detuvo. Buscaron el problema y
encontraron una falla en un disyuntor. Adentro habían encontrado una polilla
que estaba muerta. La sacaron con pinzas y la adjuntaron con cintas al cuaderno
de notas. Desde entonces cuando un oficial venía a preguntar si estaban
ejecutando alguna tarea, le contestaban que estaban “depurando” la computadora.
Hopper trabajó en programación de
aplicaciones para las computadoras de Harvard
Mark I, Mark II y la Mark
III para la Marina de Guerra y en
1946 fue presentada para el Premio Naval al Desarrollo de Municiones.
Después de tres años de trabajo en las computadoras
navales, Hopper se unió a la Ekert-Mauchly Computer
Corp. en Filadelfia como matemática. Así comenzó una larga asociación que
finalizó con su retiro del grupo y su jubilación en 1971. Cuando Hopper se unió
a la Eckert-Mauchly Corp. allí se estaba
construyendo la UNIVAC I, el primer emprendimiento comercial
de una computadora digital de gran escala, la cual con el tiempo
fue instalada en el Departamento de Censos en 1951. Así Hopper comenzó sus
esfuerzos en técnicas pioneras de programación. Ella continuó en la compañía
como programadora superior cuando fue comprada por la Remington
Rand en 1950 y también luego de su fusión en 1955 con la Sperry Corp. para
formar la Sperry Rand.
Fue en 1952 que Hopper publicó su primer trabajo sobre
compiladores liderándolo como ingeniera de sistemas y directora de programación
automática en la División UNIVAC de la Sperry Rand Corp. Las primeras computadoras
necesariamente debían ser programadas hasta en sus más mínimos detalles ya que
aún no se habían desarrollado los atajos (shortcut).
Pronto se hizo obvio que muchos programas, a pesar de tener objetivos totalmente
diferentes usaban un mismo juego de instrucciones (subprogramas, rutinas y
subrutinas) que eran lógicamente idénticas e intercambiables para distintos
programas. Estas rutinas de instrucciones se podían involucrar en resolver
ciertas clases de ecuaciones, extraer raíces cuadradas, arreglar datos dentro
de la memoria para ser clasificados y listados. De allí en adelante la idea de
generar bibliotecas de subrutinas se hicieron urgentes y económicamente
necesarias para eliminar errores, acortar el tedio y minimizar la duplicación
de esfuerzos.
En los primeros pasos significativos para el
desarrollo del software la computadora misma ayudó en la preparación de los
mismos. Primero proveyó símbolos y palabras mnemotécnicas como nombres de las
instrucciones y luego cada vez más otros símbolos como designaciones de
capacidades más sofisticadas. De esta manera los programas de computación llamado “intérpretes”
transformaron los nombres mnemotécnicos en códigos reales binarios que la
computadora podía aceptar y podía ejecutar. Hopper dio un gran crédito al Dr. John
Mauchly para su desarrollo del intérprete
Short Order Code. También
notable fue el Generador de Programas de Frances E. Holberton,
el primer programa que escribió un programa, añadiendo
que Hopper le había enseñado como dibujar los diagramas de flujo. Holberton fue luego matemática en el área estándares de Fortran
en el Departamento Nacional de Normas.
En cuanto a los compiladores ellos aceptaron
símbolos representando operaciones más complejas y también juegos de
compiladores de rutinas pretesteadas. Describiendo su
trabajo en compiladores, Hopper recordó como los programadores eran
constantemente requeridos para copiar sus códigos de unos cuadernos a otros
cuadernos. Hablando en el Pioneer Day en la Conferencia Nacional de la
Computadora en 1981, Hopper dijo que los programadores no copian cosas y además no están para
agregar cosas. Así es que debemos dejar a la computadora que lo haga, haciendo notar que el
resultado fue el compilador A-O.
Una importante y temprana actividad comenzó y Hopper fue unas de las pioneras. Ella
enérgicamente alentó la creación de grupos de usuarios para compartir sus
contribuciones y formar bibliotecas de subrutinas permanentes. El grupo más
grande fue el de IBM. La Association
for Computing Machinery también mantenía bibliotecas de subrutinas y
proveía un medio de comunicación para identificación, publicación e intercambio
de algoritmos y programas.
El trabajo sobre compiladores que Hopper publicó en 1952 fue el primero de más
de 50 que ella publicó sobre programas y lenguajes de programación. Su
profundo interés en programación la condujo al Departamento de Defensa,
patrocinador del Comité de Lenguajes de Sistema de Datos (Codasyl)
en 1959. En el Pentágono tuvo que considerar el establecimiento de un lenguaje
particular apropiado para el procesamiento de datos en los negocios. El comité
incluyó representantes del gobierno y usuarios privados así como también a los
fabricantes de computadoras. Dentro del Codasyl,
Hopper participó en la instrumentación del desarrollo del Common
Business Oriented Language
(COBOL). Hacia setiembre de 1959 el Codasyl había
especificado un lenguaje que se consideraba superior a todos los lenguajes de
compilación existentes. Las especificaciones del lenguaje fueron modificadas en
Diciembre de 1959 y el Cobol existió como un lenguaje que no fue identificado
con ningún fabricante y esto fue una ventaja tanto para el gobierno como para la
industria privada. Desde entonces cientos de otros lenguajes e idiomas de
aplicación especializados fueron creados. Durante los años 50, 60 y 70, Hopper
fue una primera figura en el desarrollo del Cobol y trabajó incansablemente en
el desarrollo de varios compiladores para este lenguaje.
Hopper trabajó en el Comité de
Estandarización de lenguajes de computación del American National Standards Institute
(Ansi) y también prestó servicios en el Comité
Ejecutivo del Codasyl.
Trabajando en estandarización Hopper creyó que hubo normas que fueron
descuidadas y que por esa causa el gobierno federal había gastado 450 millones
de dólares en un año para convertir programas de computación. Un verdadero despilfarro
de dinero.
Desde 1959 Hopper estuvo asociada a la Moore School of Electrical
Engineering de la Universidad de Pennsylvania, primero como visitante, en 1962 como
asistente de profesor, en 1963 como profesor asociado y desde 1963 como
profesor adjunto de ingeniería. En 1971 fue nombrada conferencista en ciencias
del gerenciamiento en la George Washington University, en Washington D.C.
Fue una conferencista popular y
enérgica. Después de 40 años de estar en la computación llegó a tener
conceptos poco cariñosos cuando dijo que la industria de la computación estaba
como cuando el Modelo T se comenzó a desarrollar. Cuando ella era joven Henry Ford
inventó un auto que podía ser con tantas variantes como ellos querían y
además de color negro. Hopper decía que ése era el lugar donde nos
encontrábamos, en los inicios del uso masivo de la computadora. Ni siquiera se había comenzado a
explotar todo su potencial. Parte de esas potencialidades estaban en los campos
de la predicción del tiempo, en el manejo de los recursos de energía y en el
incremento del rendimiento agrícola.
Después de cuatro décadas de trabajo pionero, de
premios, de grados honorarios y de tener oportunidades que ella nunca habría
soñado, Hopper tenía la sensación que su contribución
más grande había sido toda la gente joven que había entrenado.