Articulo de referencia

Niklaus Wirth

{{cite magazine |last=Gosch |first=John |date=25 October 1979 |title=Wirth works to better Pascal |magazine=[[Electronics (magazine)|Electronics]] |publisher=Paul W. Reiss |edit...

Niklaus Emil Wirth ( IPA : / vɛrt / ) (15 de febrero de 1934 - 1 de enero de 2024) fue un científico informático suizo . Diseñó varios lenguajes de programación , incluido Pascal , y fue pionero en varios temas clásicos de la ingeniería de software. En 1984, ganó el Premio Turing , generalmente reconocido como la máxima distinción en ciencias de la computación , "por desarrollar una serie de lenguajes de programación innovadores". [ 4 ]

Primeros años y educación

Niklaus Emil Wirth nació en Winterthur , Suiza, el 15 de febrero de 1934. [ 5 ] Era hijo de Hedwig (de soltera Keller) y Walter Wirth, profesor de secundaria. [ 6 ] Wirth estudió ingeniería electrónica en el Instituto Federal de Tecnología de Zúrich (ETH Zúrich) de 1954 a 1958, donde se graduó con una licenciatura en ciencias (BS). [ 6 ] En 1960, obtuvo una maestría en ciencias (M.Sc.) de la Universidad Laval en Quebec . [ 6 ] Luego, en 1963, recibió un doctorado en ingeniería eléctrica e informática (EECS) de la Universidad de California, Berkeley , bajo la supervisión del pionero del diseño de computadoras Harry Huskey . [ 7 ]

Carrera

De 1963 a 1967, Wirth fue profesor asistente de informática en la Universidad de Stanford y nuevamente en la Universidad de Zúrich . [ 6 ] En 1968, se convirtió en profesor de informática en la ETH Zúrich, y realizó dos estancias sabáticas de un año en Xerox PARC en California (1976-1977 y 1984-1985). Se jubiló en 1999. [ 7 ]

Aunque Wirth participó en el desarrollo de estándares internacionales en programación e informática, como miembro del Grupo de Trabajo 2.1 de la Federación Internacional para el Procesamiento de la Información (IFIP) sobre Lenguajes Algorítmicos y Cálculos, [ 8 ] que especificó , mantiene y da soporte a los lenguajes de programación ALGOL 60 y ALGOL 68 , [ 9 ] se sintió frustrado por las discusiones en los grupos de estándares y publicó sus lenguajes más tarde como trabajo personal, principalmente Pascal , Modula-2 y Oberon .

En 2004, fue nombrado miembro del Museo de Historia de la Computación "por su trabajo fundamental en lenguajes de programación y algoritmos, incluidos Euler , Algol-W , Pascal, Modula y Oberon". [ 10 ]

Lenguajes de programación

Wirth en 1969

Wirth fue el diseñador principal de los lenguajes de programación Euler (1965), PL360 (1966), ALGOL W (1966), Pascal (1970), [ 11 ] Modula (1975), Modula-2 (1978), [ 7 ] Oberon (1987), Oberon-2 (1991) y Oberon-07 (2007). [ 12 ] También fue una parte importante del equipo de diseño e implementación de los sistemas operativos Medos-2 (1983, para la estación de trabajo Lilith ) [ 13 ] y Oberon (1987, para la estación de trabajo Ceres ), [ 14 ] [ 15 ] y del sistema de diseño y simulación de hardware digital Lola (1995) . [ 16 ] [ 17 ]

En 1984, Wirth recibió el Premio Turing de la Association for Computing Machinery (ACM) por el desarrollo de estos lenguajes. [ 18 ] En 1994, fue nombrado miembro de la ACM. [ 19 ]

En 1999, recibió el premio ACM SIGSOFT a la investigación destacada. [ 20 ]

Ley de Wirth

En 1995, popularizó el adagio ahora conocido como la ley de Wirth . En su artículo de 1995, "Una defensa del software eficiente", atribuyó a Martin Reiser la siguiente frase: "El software se está volviendo más lento más rápidamente de lo que el hardware se vuelve más rápido". [ 21 ]

Publicaciones

El artículo de abril de 1971 de Communications of the ACM, «Program Development by Stepwise Refinement» [ 22 ] [ 23 ] , relativo a la enseñanza de la programación, se considera un texto clásico en ingeniería de software. [ 24 ] Se considera que este trabajo fue el primero en describir formalmente el método descendente para el diseño de programas. [ 25 ] [ 26 ] Fred Brooks lo analizó en su influyente libro The Mythical Man-Month y lo describió como «fundamental» en la breve biografía de Wirth publicada por la ACM con motivo de su Premio Turing. [ 27 ] [ 28 ]

El libro de texto de 1973, Programación sistemática: una introducción [ 29 ], fue descrito como una fuente de calidad para matemáticos que deseaban comprender la naturaleza de la programación en una reseña de 1974. [ 30 ] La solapa de la portada de la edición de 1973 indicaba que el libro «...está adaptado a las necesidades de las personas que consideran un curso sobre la construcción sistemática de algoritmos como parte de su formación matemática básica, en lugar de a las necesidades inmediatas de quienes desean poder codificar ocasionalmente un problema y pasárselo a su computadora para obtener una solución instantánea». [ 31 ] Aunque en la reseña se describió como un texto complejo, se recomendó como lectura útil para quienes se interesaban en las matemáticas numéricas. [ 32 ]

En 1974, el Manual de usuario e informe de Pascal , [ 33 ] escrito conjuntamente [ i ] con Kathleen Jensen , [ 36 ] sirvió como base para muchos esfuerzos de implementación del lenguaje en las décadas de 1970 ( BSD Pascal [ 37 ] ) y 1980 en los Estados Unidos y en toda Europa. [ 38 ] [ 39 ]

En 1975, escribió el libro Algorithms + Data Structures = Programs , que obtuvo un amplio reconocimiento. [ 40 ] Se publicaron revisiones importantes de este libro con el nuevo título Algorithms & Data Structures en 1986 y 2004. [ 41 ] [ 42 ] Los ejemplos de la primera edición estaban escritos en Pascal. Estos fueron reemplazados en ediciones posteriores por ejemplos escritos en Modula-2 y Oberon, respectivamente. [ 41 ] [ 42 ]

En 1992, Wirth y Jürg Gutknecht publicaron la documentación completa del sistema operativo Oberon. [ 43 ] Un segundo libro, con Martin Reiser, estaba pensado como una guía de programación. [ 44 ]

Muerte

Wirth murió en Zúrich el día de Año Nuevo de 2024, a los 89 años. [ 6 ] [ 45 ]

Véase también

Notas

  1. El primer capítulo (Documentación) es un trabajo conjunto, que según Jensen ha sido editado por Wirth. [ 34 ] El segundo capítulo es de Wirth (también publicado por separado [ 35 ] ).

Referencias

  1. Gosch, John (25 de octubre de 1979). Weber, Samuel (ed.). "Wirth trabaja para mejorar Pascal" (PDF) . Perfil. Electrónica . Paul W. Reiss. pág.  157. ISSN 0013-5070 . Archivado (PDF) del original el 20 de mayo de 2024. Recuperado el 14 de agosto de 2024. [Su familia] incluye dos niñas y un niño. 
  2. "Ganadores del premio IEEE Emanuel R. Piore" (PDF) . IEEE . Archivado del original (PDF) el 24 de noviembre de 2010. Consultado el 20 de marzo de 2021 .
  3. "Niklaus Wirth 2004 Fellow" . Museo de Historia de la Computación . Archivado del original el 3 de julio de 2019. Consultado el 1 de diciembre de 2017 .
  4. "Niklaus E. Wirth - Galardonado con el Premio AM Turing" . Association for Computing Machinery. 2019. Archivado del original el 29 de junio de 2017. Consultado el 8 de enero de 2024 .
  5. Henderson, Harry (2009). "Wirth, Niklaus" . Enciclopedia de Ciencias de la Computación y Tecnología . Infobase Publishing. pág. 514. ISBN  978-1-4381-1003-5.
  6. 1 2 3 4 5 Zehnder, Carl August: "Wirth, Niklaus" en alemán , francés e italiano en el Diccionario histórico en línea de Suiza , 13 de febrero de 2024.
  7. 1 2 3 Pomberger, Gustav; Mössenböck, Hanspeter; Rechenberg, Peter (2000). "Niklaus Wirth: un pionero de la informática" . La escuela de Niklaus Wirth: el arte de la simplicidad . Publicaciones profesionales del Golfo. pag. 6.ISBN  978-3-932588-85-3.
  8. Jeuring, Johan; Meertens, Lambert ; Guttmann, Walter (17 de agosto de 2016). "Perfil del Grupo de Trabajo 2.1 de IFIP" . Foswiki . Archivado del original el 8 de marzo de 2021. Recuperado el 4 de octubre de 2020 .
  9. ^ Swierstra, Doaitse; Gibbons, Jeremy ; Meertens, Lambert (2 de marzo de 2011). "AlcanceEtc: IFIP21: Foswiki" . Foswiki . Archivado desde el original el 2 de septiembre de 2018 . Consultado el 4 de octubre de 2020 .
  10. "Niklaus Wirth: Becario 2004" . Museo de Historia de la Computación (CHM) . Archivado del original el 3 de julio de 2019. Consultado el 15 de octubre de 2019 .
  11. Petzold, Charles (9 de septiembre de 1996). "Lenguajes de programación: supervivientes y aspirantes" . The New York Times . ISSN 0362-4331 . Archivado del original el 9 de marzo de 2018. Consultado el 8 de marzo de 2018 . 
  12. Wirth, Niklaus (3 de mayo de 2016). El lenguaje de programación Oberon-07 (PDF) . ETH Zurich, Departamento de Ciencias de la Computación (Informe). Archivado (PDF) del original el 21 de enero de 2021. Recuperado el 17 de enero de 2021 .
  13. Knudsen, Svend Erik (1983). Medos-2: un sistema operativo orientado a Modula-2 para la computadora personal Lilith (Tesis doctoral). ETH Zúrich. doi : 10.3929/ethz-a-000300091 . hdl : 20.500.11850/137906 . Archivado del original el 4 de enero de 2024. Recuperado el 4 de enero de 2024. Estoy en deuda con el Prof. N. Wirth por concebir y coordinar el proyecto Lilith, por darme la oportunidad de diseñar e implementar el sistema operativo Medos-2 y por supervisar esta tesis.
  14. Franz, Michael (2000). «Oberon: La joya olvidada». En Böszörményi, László (ed.). La escuela de Niklaus Wirth: El arte de la simplicidad . Gulf Professional Publishing. pp. 42, 45. ISBN  978-3-932588-85-3.
  15. Proven, Liam (29 de marzo de 2022). "El salvaje mundo de los sistemas operativos que no son C" . The Register . Consultado el 4 de abril de 2024 .
  16. Wirth, Niklaus (1995). Diseño de circuitos digitales . Springer.
  17. Eberle, Hans (2000). "Diseño de una red de clústeres". En Böszörményi, László (ed.). La escuela de Niklaus Wirth: el arte de la simplicidad . Publicaciones profesionales del Golfo. pag. 154.ISBN  978-3-932588-85-3Esta clase también inspiró a Niklaus a desarrollar un lenguaje de descripción de hardware sencillo pero potente llamado Lola. Niklaus siempre ha construido él mismo los sistemas que investiga o enseña, pues sabe que esta es la única manera de garantizar la honestidad y la credibilidad de un ingeniero.
  18. Haigh, Thomas (1984). "Niklaus E. Wirth" . Premio AM Turing . Asociación para la Maquinaria de Computación. Archivado del original el 19 de septiembre de 2017. Recuperado el 15 de octubre de 2019 .
  19. "Miembros de la ACM por año" . acm.org . Archivado del original el 3 de enero de 2024. Consultado el 3 de enero de 2024 .
  20. "Premio a la Investigación Destacada" . SIGSOFT . Consultado el 1 de abril de 2024 .
  21. Wirth, Niklaus (febrero de 1995). "Una defensa del software eficiente". Computer . 28 (2): 64– 68. Bibcode : 1995Compr..28b..64W . doi : 10.1109/2.348001 . S2CID 44803077 . 
  22. Wirth, "Desarrollo de programas mediante refinamiento gradual", Communications of the ACM , 14:221–227, ACM Press, 1971
  23. Wirth, Niklaus (2001). «Desarrollo de programas mediante refinamiento gradual». En Broy, Manfred; Denert, Ernst (eds.). Pioneros y sus contribuciones a la ingeniería de software . Berlín, Heidelberg: Springer. doi : 10.1007/978-3-642-48354-7 . ISBN 978-3-642-48355-4. S2CID 11348419 . 
  24. Gehani, Narain (1991). Ada: Programación concurrente . Silicon Press. pág. 209. ISBN  978-0-929306-08-7.
  25. Gill, Nasib Singh. Ingeniería de software . Editorial Khanna. pág. 192. ISBN  978-81-906116-3-3.
  26. Dooley, John F. (25 de noviembre de 2017). Desarrollo, diseño y codificación de software: con patrones, depuración, pruebas unitarias y refactorización . Apress. pág. 54. ISBN  978-1-4842-3153-1.
  27. Brooks, Frederick P. (Frederick Phillips) (1975). El hombre-mes mítico . Reading, Mass.: Addison-Wesley Pub. Co. p. 143. ISBN   978-0-201-00650-6.
  28. "Niklaus Wirth: Ganador del Premio ACM AM Turing de 1984". Communications of the ACM . 28 (2). Febrero de 1985. doi : 10.1145/1283920.1283941 .
  29. Wirth, Niklaus (8 de enero de 1973). Programación sistemática: una introducción . Prentice-Hall. ISBN 0-13-880369-2.
  30. Abrahams, Paul; Wirth, Niklaus (julio de 1974). "Programación sistemática: una introducción". Matemáticas de la computación . 28 (127): 881. doi : 10.2307/2005728 . JSTOR 2005728 . 
  31. Wirth, Niklaus (1973). «Solapa de la cubierta». Programación sistemática: Una introducción . Prentice-Hall. ISBN 0-13-880369-2.
  32. Abrahams, Paul (julio de 1974). "Programación sistemática: una introducción de Niklaus Wirth". Matemáticas de la computación . 28 (127). Sociedad Matemática Americana : 881–883 . doi : 10.2307/2005728 . JSTOR 2005728 . 
  33. Manual de usuario e informe de Pascal, segunda edición .
  34. "Discurso de Kathleen Jensen en el Simposio Wirth (20.02.2014)" . YouTube . 25 de febrero de 2014. Archivado del original el 6 de enero de 2024. Consultado el 6 de enero de 2024 .
  35. Wirth, Niklaus (1973). El lenguaje de programación Pascal (Informe revisado) (Informe). ETH Zurich. pp. 49 p. doi : 10.3929/ethz-a-000814158 . hdl : 20.500.11850/68910 . 
    • https://www.researchgate.net/scientific-contributions/Kathleen-Jensen-2058521472 Archivado el 6 de enero de 2024 en Wayback Machine
    • https://dl.acm.org/profile/81334487416 Archivado el 6 de enero de 2024 en Wayback Machine
    • https://dblp.org/pid/06/5848.html Archivado el 6 de enero de 2024 en Wayback Machine
  36. Joy, William N.; Graham, Susan L.; Haley, Charles B. (1979). Manual del usuario de Berkeley Pascal, versión 1.1, abril de 1979. Universidad de California, Berkeley. Departamento de Ingeniería Eléctrica y Ciencias de la Computación. Archivado del original el 8 de enero de 2024. Recuperado el 8 de enero de 2024 .
  37. Blotnick, Srully (julio de 1983). "Don't Fail Me Now" (PDF) . Pascal News (26): 26. Archivado (PDF) del original el 5 de enero de 2024. Recuperado el 3 de enero de 2024 .
  38. Hartel, Pieter H. (mayo de 1982). "Pascal para programadores de sistemas" (PDF) . ECODU-32. Archivado (PDF) del original el 22 de marzo de 2020. Recuperado el 3 de enero de 2024 .
  39. Citas recopiladas por la Association for Computing Machinery (ACM)
  40. 1 2 Wirth, Niklaus (1986). «Prefacio a la edición de 1986» . Algoritmos y estructuras de datos . Prentice-Hall. pág. 9. ISBN  978-0-13-022005-9El cambio principal que impregna todo el texto se refiere al lenguaje de programación utilizado para expresar los algoritmos. Pascal ha sido reemplazado por Modula-2 .
  41. 1 2 Wirth, Niklaus. "Algoritmos y estructuras de datos" (PDF) . ETH Zúrich. Archivado (PDF) del original el 17 de abril de 2021. Recuperado el 4 de enero de 2024. © N. Wirth 1985 (versión Oberon: agosto de 2004).
  42. Wirth, Niklaus ; Gutknecht, Jürg (1992). Proyecto Oberon: El diseño de un sistema operativo y un compilador (PDF) . Addison-Wesley, ACM Press. ISBN 978-0-201-54428-2Archivado del original (PDF) el 12 de abril de 2013.Agotado. Versión en línea de una segunda edición archivada el 5 de abril de 2014 en Wayback Machine . Edición de 2005, PDF. Archivada el 8 de julio de 2021 en Wayback Machine.
  43. Reiser, Martin; Wirth, Niklaus (1992). Programación en Oberon: Pasos más allá de Pascal y Modula (PDF) . Addison-Wesley, ACM Press. ISBN 978-0-201-56543-0Archivado del original (PDF) el 16 de abril de 2016. Consultado el 1 de junio de 2017 .Agotado.
  44. Proven, Liam (4 de enero de 2024). "RIP: Niklaus Wirth, pionero del diseño de software y creador de Pascal" . The Register . Archivado del original el 7 de enero de 2024. Consultado el 6 de enero de 2024 .

Lecturas adicionales

  • Wirth, Niklaus (abril de 1971). "Desarrollo de programas mediante refinamiento gradual" . Communications of the ACM . 14 (4): 221– 227. doi : 10.1145/362575.362577 . hdl : 20.500.11850/80846 . S2CID 13214445 . 
  • Wirth, N. (1974). "Sobre el diseño de lenguajes de programación" (PDF) . Actas del Congreso IFIP 74 : 386–393 .
  • Sitio web oficial dela ETH Zúrich
  • Biografía en la ETH Zúrich
  • Niklaus Wirth en el servidor de bibliografía DBLP
  • Niklaus E. Wirth en la Asociación para la Maquinaria Informática
  • " Del diseño de lenguajes de programación a la construcción de computadoras "—Conferencia del Premio Turing, 1984
  • " Pascal y sus sucesores "—Artículo de Niklaus Wirth; también incluye una breve biografía.
  • " Unas palabras con Niklaus Wirth ", Desarrollo de software , vol. 5, n.º 6, junio de 1997.
  • La escuela de Niklaus Wirth: El arte de la simplicidad , de László Böszörményi, Jürg Gutknecht , Gustav Pomberger (editores). dpunkt.verlag ; Editores Morgan Kaufmann , 2000. ISBN 3-932588-85-1, ISBN 1-55860-723-4.
  • El libro Construcción de compiladores
  • El libro Algoritmos y Estructuras de Datos
  • El libro «Proyecto Oberon: El diseño de un sistema operativo y un compilador », que trata sobre el lenguaje y el sistema operativo Oberon, ya está disponible en formato PDF. El archivo PDF incluye un apéndice adicional titulado «Diez años después: De objetos a componentes».
  • Proyecto Oberon 2013 : Segunda edición en línea del libro anterior, adaptada para su reimplementación en hardware FPGA.