Niklaus Emil Wirth (15 de febrero de 1934 - 1 de enero de 2024) fue un 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ás alta distinción en informática , "por desarrollar una secuencia de lenguajes informáticos innovadores". [3]
Temprana edad y educación
Niklaus Emil Wirth nació en Winterthur , Suiza , el 15 de febrero de 1934. [4]
De 1963 a 1967, Wirth se desempeñó como profesor asistente de informática en la Universidad de Stanford y nuevamente en la Universidad de Zúrich . Luego, en 1968, se convirtió en profesor de informática en ETH Zürich y se tomó dos años sabáticos en Xerox PARC en California (1976-1977 y 1984-1985). Se jubiló en 1999. [5]
En 2004, fue nombrado miembro del Museo de Historia de la Computación "por su trabajo fundamental en lenguajes y algoritmos de programación, incluidos Euler, Algol-W, Pascal, Modula y Oberon". [8]
En 1999, recibió el Premio ACM SIGSOFT a la Investigación Destacada [18]
ley de wirth
En 1995, popularizó el adagio ahora denominado ley de Wirth . En su artículo de 1995 "A Plea for Lean Software", lo expresó así: "El software se está volviendo más lento más rápidamente de lo que el hardware se vuelve más rápido". y se lo atribuyó a Martin Reiser. [19]
Publicaciones
El artículo de Communications of the ACM de abril de 1971 "Desarrollo de programas mediante refinamiento gradual", [20] [21] sobre la enseñanza de la programación, se considera un texto clásico en ingeniería de software. [22] El artículo se considera el primer trabajo que describe formalmente el método de arriba hacia abajo para diseñar programas. [23] [24] El artículo fue discutido por Fred Brooks en su influyente libro The Mythical Man-Month y fue descrito como "seminal" en la breve biografía de Wirth de la ACM publicada en relación con su Premio Turing. [25] [26]
El libro de texto de 1973, Programación sistemática: una introducción , [27] fue descrito como una fuente de calidad para los matemáticos que desean comprender la naturaleza de la programación en una revisión de 1974. [28] La solapa de la portada, de la edición de 1973, decía que el libro "... está diseñado para las necesidades de las personas que ven un curso sobre construcción sistemática de algoritmos como parte de su formación matemática básica, en lugar de las necesidades inmediatas de aquellos que desean poder codificar ocasionalmente un problema y pasarlo a su computadora para una solución instantánea". [29] Descrito en la revisión como un texto desafiante para trabajar, sin embargo, se recomendó como lectura útil para aquellos interesados en las matemáticas numéricas. [30]
En 1974, The Pascal User Manual and Report , [31] escrito conjuntamente [i] con Kathleen Jensen, [34] sirvió como base para muchos esfuerzos de implementación del lenguaje en los años 1970 ( BSD Pascal [35] ) y 1980 en los Estados Unidos. Estados Unidos y en toda Europa. [36] [37]
En 1975 escribió el libro Algoritmos + Estructuras de datos = Programas , que obtuvo un amplio reconocimiento. [38] Las revisiones importantes de este libro con el nuevo título Algoritmos y estructuras de datos se publicaron en 1986 y 2004. [39] [40] Los ejemplos de la primera edición fueron escritos en Pascal. Estos fueron reemplazados en ediciones posteriores con ejemplos escritos en Modula-2 y Oberon, respectivamente. [39] [40]
En 1992, Wirth y Jürg Gutknecht publicaron la documentación completa del sistema operativo Oberon . [41] Un segundo libro, con Martin Reiser, pretendía ser una guía de programación. [42]
Muerte
Wirth murió el día de Año Nuevo de 2024, a los 89 años. [43]
^ El primer capítulo (Documentación) es un trabajo conjunto, que según Jensen ha sido editado por Wirth. [32] El segundo capítulo es de Wirth (también publicado por separado [33] ).
Referencias
^ "Ganadores del premio IEEE Emanuel R. Piore" (PDF) . IEEE . Archivado desde el original (PDF) el 24 de noviembre de 2010 . Consultado el 20 de marzo de 2021 .
^ "Becario Niklaus Wirth 2004". Museo de Historia de la Computación . Archivado desde el original el 3 de julio de 2019 . Consultado el 1 de diciembre de 2017 .
^ "Niklaus E. Wirth - Premio AM Turing". Asociación para Maquinaria de Computación. 2019. Archivado desde el original el 29 de junio de 2017 . Consultado el 8 de enero de 2024 .
^ Henderson, Harry (2009). "Con, Niklaus". Enciclopedia de Ciencias y Tecnología de la Computación . Publicación de bases de datos. pag. 514.ISBN978-1-4381-1003-5.
^ abcPomberger , 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.ISBN978-3-932588-85-3.
^ Jeuring, Johan; Meertens, Lambert ; Guttmann, Walter (17 de agosto de 2016). "Perfil del Grupo de Trabajo 2.1 del IFIP". Foswiki . Archivado desde el original el 8 de marzo de 2021 . Consultado el 4 de octubre de 2020 .
^ 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 .
^ "Niklaus Wirth: becario de 2004". Museo de Historia de la Computación (CHM) . Archivado desde el original el 3 de julio de 2019 . Consultado el 15 de octubre de 2019 .
^ Petzold, Charles (9 de septiembre de 1996). "Lenguajes de programación: supervivientes y aspirantes". Los New York Times . ISSN 0362-4331. Archivado desde el original el 9 de marzo de 2018 . Consultado el 8 de marzo de 2018 .
^ Wirth, Niklaus (3 de mayo de 2016). El lenguaje de programación Oberon-07 (PDF) . ETH Zurich, Departamento de Informática (Reporte). Archivado (PDF) desde el original el 21 de enero de 2021 . Consultado el 17 de enero de 2021 .
^ 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 desde el original el 4 de enero de 2024 . Consultado 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.
^ Franz, Michael (2000). "Oberon: la joya pasada por alto". En Böszörményi, László (ed.). La escuela de Niklaus Wirth: el arte de la simplicidad. Publicaciones profesionales del Golfo. págs.42, 45. ISBN978-3-932588-85-3.
^ Probado, Liam (29 de marzo de 2022). "El mundo salvaje de los sistemas operativos que no son C". El registro . Consultado el 4 de abril de 2024 .
^ Wirth, Niklaus (1995). Diseño de circuitos digitales. Saltador.
^ 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.ISBN978-3-932588-85-3. Esta clase también inspiró a Niklaus a desarrollar un lenguaje de descripción de hardware simple pero potente llamado Lola. Niklaus siempre ha construido los sistemas que investiga o enseña él mismo, ya que sabe que ésta es la única manera de mantener a un ingeniero honesto y creíble.
^ Haigh, Thomas (1984). "Niklaus E. Wirth". Premio AM Turing . Asociación para Maquinaria de Computación. Archivado desde el original el 19 de septiembre de 2017 . Consultado el 15 de octubre de 2019 .
^ "Becarios ACM por año". acm.org . Archivado desde el original el 3 de enero de 2024 . Consultado el 3 de enero de 2024 .
^ "Premio a la investigación destacada". SIGSOFT . Consultado el 1 de abril de 2024 .
^ Wirth, Niklaus (febrero de 1995). "Un alegato a favor del software ajustado". Computadora . 28 (2): 64–68. doi :10.1109/2.348001. S2CID 44803077.
^ Wirth, Desarrollo de programas mediante perfeccionamiento gradual, Comunicaciones de la ACM. 14:221–227, Prensa ACM, 1971
^ Wirth, Niklaus (2001). "Desarrollo de programas mediante refinamiento gradual". En Broy, Manfredo; 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. ISBN978-3-642-48355-4. S2CID 11348419.
^ 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. Presione. pag. 54.ISBN978-1-4842-3153-1.
^ Brooks, Frederick P. (Frederick Phillips) (1975). El mes del hombre mítico. Lectura, Massachusetts: Pub Addison-Wesley. Co.p. 143.ISBN978-0-201-00650-6.
^ "Niklaus Wirth: ganador del premio ACM AM Turing 1984". Comunicaciones de la ACM . 28 (2). Febrero de 1985. doi :10.1145/1283920.1283941.
^ Wirth, Niklaus (8 de enero de 1973). Programación sistemática: una introducción . Prentice Hall. ISBN0-13-880369-2.
^ Abrahams, Pablo; 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.
^ Wirth, Niklaus (1973). "Solapa de cubierta". Programación sistemática: una introducción . Prentice Hall. ISBN0-13-880369-2.
^ Abrahams, Paul (julio de 1974). "Programación sistemática: una introducción de Niklaus Wirth". Matemáticas de la Computación . 28 (127). Sociedad Estadounidense de Matemáticas : 881–883. doi :10.2307/2005728. JSTOR 2005728.
^ Manual de usuario de Pascal e informe segunda edición.
^ "Discurso de Kathleen Jensen en el Simposio Wirth (20.02.2014)". YouTube . Archivado desde el original el 6 de enero de 2024 . Consultado el 6 de enero de 2024 .
^ Wirth, Niklaus (1973). El lenguaje de programación Pascal (Informe Revisado) (Informe). ETH Zúrich. págs.49 pág. 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.
^ Alegría, 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 desde el original el 8 de enero de 2024 . Consultado el 8 de enero de 2024 .
^ Blotnick, Srully (julio de 1983). "No me falles ahora" (PDF) . Pascal News (26): 26. Archivado (PDF) desde el original el 5 de enero de 2024 . Consultado el 3 de enero de 2024 .
^ Hartel, Pieter H. (mayo de 1982). "Pascal para programadores de sistemas" (PDF) . ECODU-32. Archivado (PDF) desde el original el 22 de marzo de 2020 . Consultado el 3 de enero de 2024 .
^ ab Wirth, Niklaus (1986). "Prefacio a la edición de 1986". Algoritmos y estructuras de datos . Prentice Hall. pag. 9.ISBN978-0-13-022005-9. El 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 .
^ Wirth, Niklaus ; Gutknecht, Jürg (1992). Proyecto Oberon: el diseño de un sistema operativo y un compilador (PDF) . Addison-Wesley, Prensa ACM. ISBN978-0-201-54428-2. Archivado desde el original (PDF) el 12 de abril de 2013.Agotado. Versión online de una 2.ª edición Archivado el 5 de abril de 2014 en Wayback Machine . Edición de 2005, PDF. Archivado el 8 de julio de 2021 en Wayback Machine.
^ Reiser, Martín; Wirth, Niklaus (1992). Programación en Oberon: pasos más allá de Pascal y Modula (PDF) . Addison-Wesley, Prensa ACM. ISBN978-0-201-56543-0. Archivado desde el original (PDF) el 16 de abril de 2016 . Consultado el 1 de junio de 2017 .. Agotado.
^ Probado, Liam (4 de enero de 2024). "RIP: pionero del diseño de software y creador de Pascal, Niklaus Wirth". El registro . Archivado desde el original el 7 de enero de 2024 . Consultado el 6 de enero de 2024 .
Otras lecturas
Wirth, Niklaus (abril de 1971). "Desarrollo de programas mediante refinamiento gradual". Comunicaciones de la 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) . Proc. Congreso IFIP 74 : 386–393.
El libro Proyecto Oberon: el diseño de un sistema operativo y un compilador. El libro sobre el lenguaje y el sistema operativo Oberon ya está disponible en formato PDF. El archivo PDF tiene un apéndice adicional Diez años después: de objetos a componentes .