original PDF

Entrevista al Profesor Dr. Edsger W. Dijkstra, Austin, 03-04-1985
©Rogier F. van Vlissingen

Detalles Biográficos

P Tomando algunas de sus drásticas declaraciones sobre la calidad del software, ¿está cambiando de algún modo, progresamos hacia mejores productos?
R Eso depende, en los últimos quince años la brecha entre las ciencias de la computación y nuestras mejores industrias se ha reducido, al igual que con las prácticas industriales. Se ha reducido mucho. Esto se debe, en gran parte a que las ciencias de la computación en las universidades hayan avanzado tanto. Ahora la industria está empleando personal más joven que cuenta con una mejor preparación que con la que se contaba en el pasado. A lo largo de los años he realizado varias presentaciones sobre programación alrededor del mundo y la reacción más común en la audiencia ha sido: “Qué pena que mi jefe no esté aquí.” Es un comentario muy triste, pero la moraleja de la historia es que las prácticas industriales sufren, mayoritariamente, debido al conservadurismo e incompetencia técnica de los gerentes de estos proyectos. Sin embargo, si se pudiera cambiar la organización interna y jerarquía de las organizaciones de la industria de la programación, habría lugar para grandes progresos. Y creo que va a cambiar, porque la presión que llega de abajo se vuelve más y más fuerte.
P En la práctica, la presión de la producción parece recompensar a la programación inteligente por sobre la buena programación: ¿Qué tanto estamos progresando hacia el caso en el que la buena programación también sea efectiva en lo que respecta al costo?
R Bueno, se ha dicho una y otra vez que el tremendo costo de programación es consecuencia de la mano de obra barata, lo que la vuelve muy costosa, y porque la gente se apresura a codificar. Una de las cosas que la gente aprende en las universidades hoy en día es a pensar primero; lo que vuelve al desarrollo más efectivo en término de costos. Conozco al menos una empresa de software en Francia, y debe de haber otras por lo que esta historia tiene un par de años, en la que existe una regla estricta por la que no se permite comenzar la codificación en tanto no haya transcurrido un setenta por ciento del tiempo pactado, cualquiera sea el software que deban entregar. Así que si después de nueve meses un equipo de proyecto reporta a su jefe que quieren comenzar a codificar, él les preguntará: “¿Están seguros que no queda otra cosa por hacer?” Y si ellos dicen que sí, se les dirá que el producto será despachado en tres meses. Esa compañía es muy exitosa.
P Existe la percepción de que la difusión de las computadoras personales conlleva una pretendida alfabetización informática. La ‘revolución de la PC’ debiera preparar más al usuario laico para soluciones basadas en computadoras y ayudaría al progreso del uso de las computadoras en las corporaciones. ¿Hay sustancia en esta percepción o quizás este desarrollo esté embarrando las aguas?
R Dos comentarios respecto de esta pregunta. Uno es que su punto de vista de los programas industriales así como lo presenta en la pregunta es acotado. Hay todo tipo de programas que difícilmente tengan usuarios, si piensa en una transacción telefónica, o los controles digitales en los automóviles o aeroplanos. En cuanto a los productos de programación que son usados por personas, apenas tengo experiencia de primera mano; mi impresión es que una enorme cantidad del tiempo del usuario se pierde en figurarse lo que el programa hace y cómo controlarlo. Es la consecuencia de dos tipos de acontecimiento: Primero que nada que los diseñadores han fallado en mantener tan simple como se pueda la interfase del sistema. – lo que es un desafío; pero tan pronto se da cuenta uno de que el mayor desafío en las ciencias de la computación es como no perderse en las complejidades de su propia ficción, se vuelve claro que ésta es una tarea de importancia. Por otra parte la escena se ve enturbecida por el hecho de que un gran porcentaje de la gente involucrada son analfabetos funcionales; particularmente en los Estados Unidos.
P ¿Realmente piensa que esto es así, más aquí que en Holanda?
R Ah sí. En Europa una parte mucho más grande de la población puede escribir. Las personas en Norteamérica han sufrido realmente la combinación de la televisión, lo que vuelve a la lectura algo superfluo, y el teléfono. Hace algunos años, cuando estaba en CalTech, y estoy hablando de un lugar de alta calidad que todos recomiendan porque sus estudiantes son tan brillantes, un graduado me confesó – no es que lo haya confesado, sino que declaró que no le preocupaba su escritura, ya que se estaba preparando para una carrera industrial. ¡Pobre industria!
P Lo que nos lleva a otra pregunta: ¿Hay, en la producción de software…?
R Yo prefiero usar el término diseño de software, ya que es un producto abstracto.
P Bien. ¿Existe alguna diferencia significativa entre lo que sucede en Europa y en este país con respecto al diseño de software?
R La hay. Las ciencias de la computación en Norteamérica, cuando prácticas, se mantienen muy cerca de la máquina en sí, en tanto que teóricas se vuelven mucho más teóricas; y aquí yace mi fascinación personal por este punto, ya que el área de superposición entre lo teórico y lo práctico es inmensa. Lo que parece estar bien desde un punto de vista teórico suele ser eminentemente útil, y lo que es realmente bueno de una idea práctica implica siempre algo profundo que le subyace. Y mi fascinación con este punto es que existe una gran área donde las distinciones tradicionales entre lo puro y lo aplicado son insignificantes. Siempre me opuse a ser llamado un científico puro de la programación si eso implica que soy poco práctico. Siempre me opuse a ser llamado un científico práctico de la computación si eso significa que lo que hago es algo vago o vacío desde un punto de vista teórico. La síntesis entre puro y aplicado; donde la distinción desaparece, es más acogida en la escena europea que aquí. Tradicionalmente la distinción entre matemática pura y aplicada es fuerte en los Estados Unidos. Un ejemplo sencillo de este hecho puede apreciarse en que las universidades aquí tienen departamentos separados para las matemáticas puras y, digamos, investigación de estadísticas y operaciones. Una separación de este estilo sería desatendida en la mayoría de las universidades europeas. Por otra parte, la industria norteamericana de la computación tiene más peso, y como resultado se aprecia una tendencia a ver la computación en un contexto exclusivamente industrial.
P ¿Y esta diferencia guarda alguna relación con los productos desarrollados en Europa con respecto a sus equivalentes de los Estados Unidos –hablando de productos que son usados por personas; serían más amistosos con el usuario, para usar el término de moda?
R La amistad con el usuario es un término que no debiera haberse inventado nunca.
P ¿Qué palabra hubiese usado para connotar la idea?
R ¡La idea está mal! Es una larga historia sobre el usuario, que voy a tratar de condensar. El punto es que el usuario de la computadora, en el marco del desarrollo de productos para computadoras, no es una persona real de carne y hueso sino una figura literaria; la creación de la literatura, más bien de una literatura pobre. Hace 15 años noté que los científicos de la computación holandeses que desarrollaban productos, al referirse a las necesidades de un usuario usaban – en la mitad de una sentencia en holandés – la palabra user; la cual puede, por supuesto, traducirse perfectamente, como usted y yo sabemos. Nuestros paquetes de cigarrillos tienen inglés también……….; pero entonces descubrí que, a pesar de su anglofobia, la palabra user es perfecto francés. Y también descubrí que es perfecto ruso y que nosotros dos sabemos más japonés de lo que usted piensa. Bueno, el hecho de que esa pequeña palabra no se traduzca, sino que se mantenga en su cuerpo foráneo en las discusiones en holandés, francés, ruso y japonés, significa que ha perdido su sentido original. Ahora, si usted empieza a analizar las muchas envestiduras de esa figura literaria, llegará a descubrir que el pretendido usuario es algo desesperanzador. Resulta estúpido, resistente sino es que inmune a la educación, odia cualquier forma de demanda intelectual que caiga sobre él; no puede gozar de algo hermoso, porque le falta educación para apreciar la belleza. Una gran parte de las ciencias de la computación está paralizada por aceptar a este estúpido como su usuario tipo. Pocas son las compañías que están preparadas para hacer un Mercedes, el análogo a un producto de alta categoría para el usuario exigente. Por lo que puede apreciarse, particularmente en los Estados Unidos, las matemáticas son el pináculo de la enemistad con el usuario. Si usted lee los catálogos de las editoriales de libros de texto, notará que la recomendación más trascendente que le dan a un libro es que sea a-matemático, que no requiera conocimientos matemáticos, etc. Así que, la amistad con el usuario es, entre otras cosas, la causa de un error frenético por ocultar el hecho de que las computadores son máquinas matemáticas de por sí.
P ¿Qué debiera hacerse por la industria para salir de este punto muerto?
R Puede que no sea posible. Hace cinco o seis años Harlan B.Mills expuso falsamente que la industria de la computación, los usuarios de las computadoras y las instituciones educacionales estaban en una situación de completo estancamiento. La industria no se siente responsable de educar a su gente, porque son extremadamente conservadores con sus productos; y así se pautan las demandas del usuario dentro de la industria. Las universidades no se animan a cubrir las cosas reales en su programa universitario porque la industria y los futuros empleadores no están esperando que eso suceda. Su conclusión fue que romper con este punto muerto era una responsabilidad federal. Yo pienso que las universidades pueden; y si no lo hacen es porque han olvidado su rol. ¿Qué implica ser una institución destacada? Lo que más hace falta es: que un par de buenas universidades cuenten con sólidos y anticuados departamentos de ciencias de la computación. Ya sea que esto esté planeado o no, pienso que algunos profesores de ciencias de la computación no serán suprimidos. No pueden ser domesticados para que presenten un montón de basura a sus alumnos.
P ¿Y usted intenta ser uno de estos que no serán suprimidos…?
R ¡Nunca lo he sido!
P ¿Y su traslado a los Estados Unidos tiene un significado especial en esta lucha de liberación?
R No, porque llevo adelante mi trabajo de la misma manera que antes. Recibí una oferta muy buena y la razón por la que la acepté fue que en el curso de once años de trabajo con Burroughs Corp. – once años maravillosos, por los que estoy muy agradecido con la compañía – mi interés se proyectó más allá de las necesidades técnicas de la industria de la computación. Al menos de la manera en que la industria de la computación los percibía. Entonces sentí que un regreso al campus universitario sería apropiado.
P ¿Son los Estados Unidos el paraíso de las ciencias de la computación tal que presumen ser?
R No.
P ¿Por qué dice eso?
R Porque están en riesgo de ser apoyadas a muerte. No son, de seguro, un paraíso para las ciencias de la computación. Una de las cosas que debe hacer un científico de la computación es distinguir entre los problemas específicos de la ciencia de la computación y el uso de las computadoras en la sociedad. Y entonces debemos distinguir claramente entre los problemas de las ciencias de la computación y aquellos generados por el sistema educativo. Debemos también separar claramente los problemas de las ciencias de la computación de aquellos generados por el contacto entre la industria y los consumidores. La satisfacción del usuario no es un criterio de calidad para un producto de la computación.
P ¿Qué le hace decir eso?
R Hace años me presentaron la satisfacción del cliente como un criterio de calidad y me pareció ridículo. Es algo que se puede conseguir de muchas maneras. Por ejemplo, al no educar a los clientes, diciéndoles que no puede hacerse algo mejor; postulando que el hecho de que los programas tengan errores es una ley natural. Hasta se lo puede conseguir por intimidación. Lo peor de todo es que el objetivo es demasiado difuso como para dar asistencia técnica. No, la satisfacción del usuario como criterio es típicamente norteamericana, porque el punto de contacto entre el proveedor y sus consumidores en Norteamérica está en que los proveedores dejan las últimas instancias de control a cargo de los consumidores. Por eso es que puede verse tanto la frase “satisfacción garantizada y sino puede devolverlo”: lo remendarían indefinidamente. Algo ha pasado con el diseño de lenguajes de programación. Los lenguajes de programación deben ser, por supuesto, amistosos con el usuario, a los programadores deben gustarles. Durante mucho tiempo las características de los lenguajes de programación se incluían en los lenguajes de acuerdo a su supuesta popularidad – el criterio principal era si a la gente le iba a gustar o no – partiendo otra vez de una triste percepción del usuario. El gran cambio en los lenguajes de programación vino cuando empezamos a dar definiciones formales a la semántica de los conceptos de los lenguajes de programación. Algo que hace falta si se quieren probar cosas sobre los programas escritos en él. Y aún si no se espera conseguirlo de una manera formal, es un ejercicio extremadamente saludable para los diseñadores de lenguajes de programación. La formalización actuó como un sistema de alerta temprana: si la definición formal de una característica se vuelve confusa y complicada, entonces no se debe ignorar esa advertencia.
P ¿Puede explicar algo más sobre estos desarrollos del lenguaje que brindan mejores características?
R Las versiones de los lenguajes con los que están experimentando los científicos de la computación no se seleccionan por su potencial atractivo para los ineducados, sino que son evaluados con criterios tales como el del poder matemático, en un sentido muy riguroso, la elegancia matemática y este tipo de investigación ha producido toda clase de cosas. Algunos se mantienen dentro del marco de los lenguajes imperativos porque sabemos muy bien como implementarlos de manera eficiente. Otros están explorando lenguajes de programación funcionales.
P ¿Puede explicar la diferencia entre estos dos?
R En un minuto voy a intentarlo. Otros están siendo menos constructivos en sus consideraciones. Definen las respuestas a partir de un conjunto de operaciones lógicas, dejando a la implementación la tarea de descubrir la solución a ese conjunto de ecuaciones. El efecto neto de esto es que un sistema completo para la programación que sea realmente aceptable; será a la vez un sistema completo que cumplirá con la descripción de la matemática constructiva. Lo que está pasando es que la brecha entre el programa que una computadora pueda ejecutar y la prueba matemática de que esa respuesta exista se está reduciendo.
La manera más sencilla de caracterizar la diferencia entre un lenguaje imperativo de programación y uno que no lo sea es que al razonar sobre la programación imperativa se debe estar al tanto del ‘estado’ de la máquina a medida que se graba en su memoria. En conjunción con esto existe una clara diferencia entre el programa que se tiene, por una parte y la información procesada por la otra. En el caso de la programación funcional se crea un lenguaje en el cual se puede escribir todo tipo de expresiones y para evaluar una expresión se la masajea hasta alcanzar la forma esperada.
P Se está refiriendo a la vanguardia de la investigación de lenguajes de computadora…
R Sí. Lo que se encuentra otra vez en peligro de ser apoyado a muerte ya que una de las esperanzas de la programación funcional es que en la ejecución de programas escritos en un estilo funcional se puede explotar la concurrencia en gran medida y de una manera más sencilla.
P ¿Y qué tanto de estas investigaciones está, a este punto, volcándose en las aplicaciones industriales?
R Poco, pero más de lo que usted piensa. Conozco un entorno industrial, por dar un ejemplo, de una enorme casa de software que forma parte de una compañía petrolera y cuyo propósito principal es satisfacer las demandas de la empresa matriz, así que podemos decir que es un entorno definitivamente industrial; el caso es que al comenzar un programa nuevo desarrollan un prototipo utilizando un lenguaje de programación funcional en un tiempo sorprendentemente corto. De hecho en menos de un décimo del tiempo que hubiese requerido otra técnica de programación. Ellos cuentan con una implementación de este lenguaje de programación funcional, pero podemos decir que no es muy buena; como resultado de esto el prototipo acaba siendo inaceptablemente lento, pero la experiencia acaba restituyéndolo como un muy importante paso intermedio hacia el producto final. Así que hemos visto que, aunque invisible en el producto final, los nuevos lenguajes de programación y las técnicas de implementación están empezando a jugar un papel detrás de escena. Esto impactará profundamente en la comunidad del software – usted verá, el punto es que cuando quiera beneficiarse de la disponibilidad de la máquina en el desarrollo de programas, obviamente los primeros candidatos para la automatización serán aquellos procesos más o menos rutinarios. Como resultado lo más difícil del asunto permanece. Con nuestras así llamadas herramientas de programación el efecto neto es que la programación se vuelve cada vez más dificultosa. Las partes sencillas se automatizan y lo dificultoso se mantiene y alcanza el nivel en el que le requiere al desarrollador de software un cierto nivel de sofisticación matemática. Hace un tiempo presencié una discusión acalorada que involucraba un montón de las así llamadas funciones de orden alto – las funciones de orden alto son consideradas demasiado extravagantes por muchos matemáticos como para siquiera hablar de ellas, son funciones que toman funciones como parámetros y pueden llegar a devolver una función como valor – era un grupo de científicos industriales de la computación y hablaban sobre las funciones de orden alto como si fuese la cosa más normal del mundo.
P Así que está pasando…
R Está pasando, ¡Sí! Si tuviese que tomar un grupo de mis colegas de la matemática tradicional y les expusiera esta discusión, no tendrían la más mínima noción de lo que ocurre, y si la tuviesen no lo podrían creer.
P Pareciera como si las mejoras en efectividad de las que hablaba se estuviesen ganando rápidamente la atención de todo el mundo – Así que… nuevamente: ¿Cuándo se percibirá este impacto?
R Usted conoce la respuesta que dio Max Planck cuando le preguntaron cuando sería aceptada por los físicos la mecánica cuántica… “¡Cuando la generación actual de físicos haya muerto!”
P ¿Esto nos deja alguna esperanza?
R Sí. Debemos tener en cuenta que en cualquier campo el período de tiempo: la demora que ocurre entre un progreso científico significativo y su aceptación por parte de la comunidad científica en su mayoría, sin mencionar el momento en el que encuentra su camino hacia la producción, se mide en generaciones. Las razones de mi desacuerdo con la manera en que he sido educado – en términos generales estoy extremadamente contento con mi educación – son que nadie me advirtió sobre este período de tiempo de un par de generaciones, tuve que descubrirlo por mi cuenta y por medio de mucha frustración.
P ¿Qué es lo que está pasando con la generación de los estudiantes actuales a los que se refería anteriormente, que traen consigo algunos de estos conceptos, o incluso algunos de estos productos?
R Hace mas o menos veinte años llegué a la conclusión de que las únicas personas que llegara a educar se convertirían en inadaptados.
P ¿Esto le deja alguna esperanza a la industria?
R Ah sí, el punto es que nosotros educamos a los científicos, quienes educan a la industria; preparando a la industria para poder emplearlos. El atraso de la industria no es un problema científico. La industria está comenzando a percibir los problemas causados por su propia inercia; por supuesto que esto tomó mucho tiempo. La gente está reaccionando, ya sea que resulte fructífero o no, nadie sabe… ¡General Motors quiere desarrollar el próximo auto en una compañía completamente nueva!
P ¿Entonces está diciendo que este camino se tomó para romper con esa inercia?
R Seguro. Es una manera de empezar de nuevo.
P En lo que respecta a cooperación entre la industria y la investigación universitaria, ¿cree que las cosas se hagan mejor aquí o en Holanda? ¿O es que pueden llegar a aprender uno del otro?
R Me resulta difícil juzgar eso, porque desde que estoy aquí no he tenido experiencia en la cooperación con la industria. Una de las razones por las cuales me uní a Burroughs Corp. como investigador colega en el 73 fue que en la década precedente había observado que era extremadamente difícil penetrar en la industria desde el campus, desde afuera. En los diez años posteriores descubrí que era difícil desde dentro también, aunque un poco más sencillo. Esto se aplica a la industria a ambos lados del Atlántico. Es mucho más común que aquí la industria apoye la investigación individual – este siempre fue el caso. Es muy probable que un profesor universitario sea también consultor, pero muchos consultores hacen lo suyo.
P ¿Usted piensa que Holanda deba aprender del enfoque norteamericano?
R Mi impresión general es que no importa el error que se cometa en los Estados Unidos, será copiado fielmente en Europa veinte años después. Europa puede aprender una enorme cantidad de los Estados Unidos; al estudiar lo que pasa allí y no copiarlo. En algunos aspectos puede que intentemos copiarlo de todos modos.
P ¿En qué está pensando específicamente?
R O, la facilidad con la que puede incorporar, creo que cuesta algo así como tres dólares…
P Considerando los posibles avances, ¿estamos en este momento limitados por la tecnología, por las técnicas de programación o quizás por ambas?
R John McCarthy de la universidad de Standford hizo un comentario hace mucho tiempo, y sigue siendo válido, en el que afirmaba que el cuello de botella más importante no se encuentra en el hardware sino en nuestra habilidad para la programación.
P Hablando de cuellos de botella en la programación – ¿Cuál será el impacto de la investigación en inteligencia artificial?
R ¿Se puede investigar algo que no sea ciencia? Siento que el esfuerzo por usar máquinas para imitar el razonamiento humano es a la vez insensato y peligroso. Es insensato porque si se le echa un vistazo al razonamiento humano resulta bastante pobre; aún lo matemáticos más entrenados son pensadores principiantes. En lugar de intentar imitar aquello en lo que somos buenos, pienso que es mucho más fascinante investigar aquello en lo que nos desempeñamos pobremente, es insensato usar máquinas para imitar a los seres humanos, en tanto que las máquinas son realmente buenas siendo máquinas, y esto es algo en lo que los seres humanos somos malos. Cualquier proyecto de inteligencia artificial exitoso castra a la máquina por su propia naturaleza.
P ¿Las ciencias de la computación se han vuelto muy populares, hay muchos estudiantes, hay muy pocos – puede percibir un cambio en el nivel de preparación de los estudiantes que ingresan ahora con respecto a digamos, diez años atrás?
R El asunto es devastadoramente popular. Porque ahora se supone que la computación puede curar todos los males del mundo y más. Una vez presenté un resumen en el que remarcaba qué, a través de los siglos, el esfuerzo científico ha sido un completo desastre. El primer esfuerzo científico fue, por supuesto, la producción del elixir que diera la juventud eterna; pero luego notaron que no tenía mucho sentido vivir eternamente si eso significaba vivir en la eterna pobreza; así que el siguiente gran proyecto científico fue como convertir cualquier cosa en oro. Y entonces fue bastante claro que la concreción de estos dos grandes proyectos quedaba fuera del alcance de los videntes del momento. Así que, por que por simples razones administrativas el plato del día pasó a ser la predicción acertada del futuro. A medida que pasaba el tiempo los objetivos iniciales se fueron olvidando. La medicina se divorció de la curandería, la química se divorció de la alquimia y la astronomía de la astrología. Sin embargo aún hay un cierto sentimiento de culpa en la comunidad académica; en cuanto emerge una nueva rama de la tecnología recibe la carga de todas las viejas esperanzas. El fenómeno actual de la computación es un reflejo inmediato de esperanzas absolutamente irreales. Así que si me pregunta si hay demasiados o demasiado pocos estudiantes: diría que son un orden de magnitud demasiados. Desde un punto de vista científico, podría preferirse desmalezar el lote para quedarse con el 2% más brillante y hacer negocios. La generación actual de jóvenes no sólo ha sido mal preparada, sino que ha sido mal guiada.
P ¿Está sugiriendo que el fenómeno de las computadoras personales ha tenido un efecto poco favorable más que…?
R Sí. Lo he dicho en público y estoy dispuesto a repetirlo, que si alguien es introducido al mundo de la computación a través del Basic quedará mentalmente mutilado y sin posibilidad de redención. Y esto no es una broma. Una gran rama de la Academia de Artes y Ciencias Siberiana se aplica a mantener al Basic fuera de las escuelas secundarias siberianas.
P ¿Y que es lo que entra en estas escuelas?
R Probablemente Basic.
P ¿De los demás lenguajes que se están volviendo populares, hay alguno que ofrezca alguna esperanza?
R O sí, la popularidad de Pascal es prometedora. No porque sea ideal, pero porque es mejor en ordenes de magnitud con respecto a sus competidores. Por otra parte se trata de un producto de un solo hombre, sin ningún tipo de patrocinio político o industrial. Ha ganado en popularidad a lo largo de una década, porque al momento de su aparición era mucho mejor que cualquier otra cosa que estuviese disponible.
P ¿Hemos visto a Lisp emerger en construcciones de documentación?
R Lisp fue algo grandioso al momento de su aparición por su manera radicalmente nueva de hacer uso de las máquinas. Ha sufrido el destino de haber sido elevado a un estado de estándar de facto con todos sus defectos. Más allá de la novedad conceptual gran parte del diseño de Lisp es increíblemente pobre aún para el nivel de la época. Cuando leí el primer manual, el manual de Lisp 1.5 publicado en 1961, no pude creer lo que leía. Era un lenguaje extremadamente pobre. Ahora se ha convertido en el estándar de facto para la comunidad de inteligencia artificial, que sufre con Lisp lo que el resto del mundo ha sufrido con Fortran.
P ¿Las ciencias de la computación se están acercando a la madurez en algún sentido, o dónde estamos nosotros?
R Bueno, nosotros somo un lote bastante mezclado ¿no lo somos? Voy a citar tres fechas: 1968, 1975 y 1984. En 1968 IBM publica un anuncio en Datamation en el que muestra a Suzie Meyer sonriendo a todo color. Suzie Meyer anuncia que ha resuelto todos sus problemas de programación por el simple hecho de cambiarse a la PL/1. ¡Es una gran pena que Datamation no haya publicado una foto de Suzie Meyer cuatro años después!
1975 fue el año en el cual el lógico sueco Per Martin-Löf se convenció del hecho de que un programa bien documentado era un objeto lógicamente isomorfo con una prueba de matemática constructiva. En ese sentido la palabra constructiva se refiere a la más pura de todas las matemáticas.
Para 1984 las ciencias de la computación se han percatado de esto. Para finales de 1983 presencié una pequeña conferencia industrial sobre la programación. Un mensaje se oyó a viva voz y declaraba que en el desarrollo de los programas las técnicas formales no sólo serían esenciales, sino que serían aplicadas en una escala sin precedentes. Bien, si compara entonces con ahora hemos recorrido un gran tramo.
P Para finalizar quiero preguntarle cuál es el proyecto de investigación más interesante del momento, si es que puede nombrar alguno.
R Puedo nombrar sólo uno y a grandes rasgos. Y es como incrementar nuestro poder de razonamiento en órdenes de magnitud y aplicarlo como una parte de la técnica formal en una escala sin precedentes. Creo firmemente que el potencial impacto de la computadora en las matemáticas en general será tan profundo en el siglo por venir como lo ha sido la influencia de la física en el análisis en el siglo pasado.

translated by Mariano Cerrutti
revised Wed, 19 Jul 2006