Niklaus Wirth

Wirth a Grandes Rasgos

 

Niklaus Emilt Wirth, nacido en Suiza el 15 de febrero de 1934, es un pionero del software conocido principalmente por haber diseñado varios lenguajes de programación, entre ellos el antaño ubicuo PASCAL, y por haber abierto el camino en la investigación y docencia  en varios campos de la ingeniería del software.

Biografía

 

Wirth nace en Winterthur, en el cantón de Zurich, en 1934. En el 59 se licencia en ingeniería electrónica por el ETH(Swiss Federal Institute of Technology) de Zurich. Un año después obtenía un M.Sc.(Master of Science) por la universidad canadiense de Laval.

En la década de los 60 Wirth engorda su currículo en varias universidades norteamericanas, entre ellas las prestigiosas Berkeley y Stanford. En Berkeley obtiene su Ph.D en lenguajes de programación bajo la supervisión del profesor H.D.Huskey.

En el 68  regresa a Suiza para trabajar como profesor en el ETH, lugar en el que permanecería hasta que se retiró en 1999.

Durante esta última etapa en Suiza, Wirth se tomó 2 años sabáticos, primero en el 76 y posteriormente en el 84, para colaborar en el mítico Xerox PARC de Palo Alto, California, donde tuvieron lugar algunas de las innovaciones mas sorprendentes en el campo de la computación personal.

Lenguajes de Programación

Wirth fue el diseñador jefe de los lenguajes de programación Euler, Algol W, Pascal, Modula, Modula-2, Oberon, Oberon-2 y Oberon-07.

Uno de sus trabajos mas remarcables aparte del diseño de lenguajes fue el diseño de la estación personal Lillith, basada en el lenguaje Modula-2. Estuvo influenciada por el histórico Alto Computer de Xerox. Pese a que tanto Modula-2 como Lillith fueron considerados importantes logros técnicos para la época, ninguno resultaría en un éxito comercial palpable.

Pascal:

Inicialmente concebido como una herramienta didáctica para promocionar el estilo de programación, rápidamente trascendió su alcance inicial y evolucionó en un lenguaje de propósito general.

El principal secreto del éxito de Pascal fue su simplicidad. Wirth fue capaz de desarrollar un pequeño y elegante compilador escrito en el propio Pascal, lo cual era bastante revolucionario por aquel entonces.

Wirth ha declarado sobre Pascal que fue este el resultado de verse liberado de los condicionantes del consenso necesario para el trabajo en equipo. Wirth desarrolla el lenguaje en Zurich, entre el 68 y el 72, basándose en Algol-W y el deseo de disponer de un lenguaje que satisficiera los requerimientos del diseño de sistemas(Compiladores, sistemas operativos…).

En el diseño de Pascal Wirth buscó que fuera axiomáticamente definible e independientemente de ningún sistema hardware en particular. El primer compilador estuvo disponible en 1970 para el sistema CDC 6000. Ya en 1972 el lenguaje se empezó a usar en cursos de introducción a la programación.

Docencia

A menudo alabado por su excelente trabajo como diseñador de lenguajes, compiladores, sistemas operativos e incluso sistemas hardware, era en definitiva, un ingeniero.

Es sin embargo menos ampliamente conocido que Wirth era un profesor soberbio, heredero de una dinastía de profesores con gran tradición.

Se puede encontrar en  sus trabajos un punto o cualidad común: la búsqueda de la simplicidad. Según sus propios alumnos, esta predilección por las soluciones simples y elegantes podría ser atribuible a la propia honestidad del profesor, que evita hablar de aspectos que no comprende realmente , y que no tiene problemas en admitir que no entiende algo, una característica no demasiado habitual en hombres de su posición.

Segun algunos de sus propios discipulos y colaboradores, Wirth es un inventor de nacimiento, con un tremendo sentido para detectar lo que será relevante en el futuro, y una sorprendente capacidad para combinar teoría y práctica. Wirth incluso diseñó sus propios sistemas hardware a medida para sus lenguajes de programación y sistemas operativos. Pocos hombres en el campo de la computación se han sentido tan comodos en ambas ramas de esta ciencia, el hardware y el software.

Adicionalmente también diseñó el sencillo lenguaje PL/0, como herramienta educativa en el campo del diseño de compiladores. Este trabajo supuso la base de un gran numero de cursos universitarios sobre diseño de compiladores.

Publicaciones Notables

En 1971 Wirth publica el texto Program Development by Stepwise Refinement, todavía hoy considerado un clásico en la enseñanza de programación.

En 1975 escribe el libro «Algoritmos+ Estructuras de Datos = Programas», que gano considerable popularidad y es todavía citado hoy en día.

Ley de Wirth

En 1995, Wirth populariza el lema hoy conocido como ley de Wirth: » El Software se ralentiza mas rápidamente de lo que el Hardware mejora». El propio Wirth atribuye este lema a Martin Reiser.

Premios

 

Wirth recibe el Premio Turing en 1994. Este es el más prestigioso premio que puede recibirse en el campo de la computación, y es entregado anualmente por la ACM.

En 1987 recibe “Computer Pioneer Award” del IEEE.

 

En 1983 recibe el IEEE Emanuel R. Piore Award “for achievement in the field of Information Processing contributing to the advancement of science and the bettermentof society

En 1994 se le hace miembro honorifico de la Academia Nacional de Ingenieria de los Estados Unidos.

Algunas citas celebres sobre la figura de Nicklaus Wirth

«Mientras que los Europeos generalmente pronuncian su nombre de la manera correcta(«Nick-louse Veert»), los Americanos invariablemente lo trastocan en «Nickel’s Worth». Esto es lo mismo que decir que los Europeos le llaman por referencia, mientras que los Americanos le llaman por valor.»

—Introducción por  Adriaan Van Wijngaarden en el congreso IFIP (1965).

«En nuestra profesión, la precisión y la perfección no son lujos prescindibles, sino simplemente una necesidad.»

—Niklaus Wirth, «A Few Words with Niklaus Wirth». Dr Carlo Pescio (Junio 1997)

“Mientras las compañías se agarren a la complejidad como medida efectiva para proteger su propiedad intelectual, hay pocas esperanzas de mejoras dramáticas en el estado de la industria.”

—Niklaus Wirth, «A Digital Contrarian Retires». Beat Gerber (Junio 1999)

Referencias

Listado de Proyectos de Nicklaus Wirth

http://www.inf.ethz.ch/personal/wirth/projects.html

Entrevista en Ingles, publicada en Software Development, Vol. 5 No. 6, Junio 1997.

http://www.eptacom.net/pubblicazioni/pub_eng/wirth.html

Program Development by Stepwise Refinement

http://sunnyday.mit.edu/16.355/wirth-refinement.html

Pascal and its Successors – Niklaus Wirth

http://www.swissdelphicenter.ch/en/niklauswirth.php

Niklaus Wirth: Geek of the Week, Richard Morris

http://www.simple-talk.com/opinion/geek-of-the-week/niklaus-wirth-geek-of-the-week/

The School of Niklaus Wirth, The Art of Simplicity, László Böszörményi, Jürg Gutknecht, Gustav Pomberger

http://books.google.es/books?id=QpL3gu-c_aoC&printsec=frontcover&dq=niklaus++wirth&source=bl&ots=d6bhxVzDtG&sig=6P6g6_Se4KmJsGbjqo8FpBUrN_k&hl=es&ei=4e7PTPjhAY-SjAeFlPWmBg&sa=X&oi=book_result&ct=result&resnum=7&ved=0CDMQ6AEwBg#v=onepage&q&f=false

Niklaus Wirth —a Pioneer of Computer Science Gustav Pomberger, Hanspeter Mössenböck, Peter Rechenberg

http://www.swe.uni-linz.ac.at/publications/pdf/tr-se-00.08.pdf