Menú Cerrar

John Cocke (1925 - 2002)

John Cocke nació en Charlotte el 30 de mayo de 1925.

Su padre, Norman Cocke, era el presidente de la Duke Power Company y miembro del claustro de la Universidad de Duke. De muy niño se hizo evidente la curiosidad que John demostraba por todo lo que le rodeaba. A los seis años le regalaron su primera bicicleta y, lo primero que hizo fue desmontarla pieza a pieza, con el consiguiente disgusto de su madre. Este espíritu inquieto y su mente bulliciosa fueron una constante durante toda su vida. Un compañero de IBM relata de este modo su forma de actuar: “De repente, a John se le ocurría una idea. Iba corriendo a la persona del departamento que él pensaba que podía saber más sobre ese tema y se lo empezaba a contar. Según estaba hablando, de repente, a John se le ocurría una idea…”

En 1956, tras estudiar y doctorarse en Matemáticas en la Universidad de Duke, entra a trabajar en los laboratorios de investigación de IBM, que no abandonaría hasta su jubilación.

En los primeros tiempos de la arquitectura de computadores, se tendía a complicar los lenguajes que microprogramaban las máquinas, procurando que el procesador fuera lo más sencillo posible. En 1975 John Cocke trabajaba en el desarrollo del IBM 801. Se planteó que la gran cantidad de instrucciones software y su complejidad era algo que no tenía sentido, ya que el ordenador, aunque más sencillo, tenía que tratar con una gran cantidad de instrucciones heterogéneas, lo que ralentizaba su funcionamiento. Pensó en la perspectiva contraria, es decir, implementar un procesador más complejo, pero que fuera capaz de realizar vía hardware el máximo posible de las instrucciones. Con el fin de no complicar el diseño del procesador (lo que redundaría en una mayor velocidad), el juego de microinstrucciones debía ser muy reducido y éstas lo más homogéneas posibles. Los programadores deberían hacer un esfuerzo mayor, pero una vez que el programa estuviera listo, se ejecutaría mucho más rápido. A esta forma de diseñar se la conoce en arquitectura de computadores como RISC (“Reduced Instruction Set Computer”), en oposición al clásico CISC (“Complex Instruction Set Computer”).

Esta filosofía de diseño se retomó a principios de los 80 por los investigadores de Berkeley y Stanford Hennesy y Patterson y la popularizaron. Hoy en día está ampliamente extendida en los grandes computadores y, por ejemplo, en los ordenadores de sobremesa de Apple.

En su larga carrera como investigador, Cocke también colaboró de manera crucial en el desarrollo de los compiladores. Descubrió y sistematizó muchas transformaciones fundamentales utilizadas hoy día de forma rutinaria, como son la reducción de intensidad de los operadores, la eliminación de subexpresiones comunes, la asignación de registros, la propagación de constantes y la eliminación de código inactivo.

Entre los reconocimientos que recibió se cuentan el haber sido nombrado Socio de Honor de IBM y la concesión en 1987 del Turing Award de ACM y de la Medalla Nacional de Tecnología de Estados Unidos en 1991.

Jubilado desde 1992, John Cocke murió el 16 de julio de 2002 en Valhalla.

Chomsky, Noam

                     

           (Anterior)

Gates, William (Bill) H.

 

                                                               (Siguiente)