stringtranslate.com

Sistema de carriles y Zierler.

El sistema Laning y Zierler (a veces llamado "George" por sus usuarios) fue el primer compilador algebraico operativo , es decir, un sistema capaz de aceptar fórmulas matemáticas en notación algebraica y producir código de máquina equivalente (el término compilador aún no se había inventado y el sistema se denominó "un programa interpretativo "). Fue implementado en 1952 [1] para el MIT WHIRLWIND por J. Halcombe Laning y Neal Zierler. Está precedido por compiladores no algebraicos como el UNIVAC A-0.

Descripción

El sistema aceptaba fórmulas en notación más o menos algebraica. Respetaba las reglas estándar para la precedencia de operadores , permitía paréntesis anidados y utilizaba superíndices para indicar exponentes . Fue uno de los primeros sistemas de programación en permitir nombres de variables simbólicas y asignar almacenamiento automáticamente.

El sistema también automatizó las siguientes tareas: cálculo en coma flotante , vinculación a subrutinas para las funciones básicas de análisis (seno, etc.) e impresión, y arrays e indexación.

El sistema aceptaba entradas en cinta perforada producida por Friden Flexowriter . El conjunto de caracteres utilizado en la instalación de Whirlwind incluía dígitos en " mayúsculas " (superíndice) y un guión, que se utilizaban para indicar índices de matriz, códigos de función y exponentes (enteros). Al igual que otras notaciones de programación de su época, el sistema aceptaba sólo nombres de variables de una sola letra y la multiplicación se indicaba mediante yuxtaposición de operandos. Un punto elevado estaba disponible para indicar la multiplicación explícitamente (¡el carácter se creó limando la mitad inferior de dos puntos!). El sistema también incluía soporte para la solución de ecuaciones diferenciales lineales mediante el método de Runge-Kutta .

El sistema fue descrito en un manual mecanografiado de 18 páginas escrito para personas familiarizadas con las matemáticas pero quizás no familiarizadas con las computadoras. No contiene casi nada a modo de introducción al hardware informático.

Programa de muestra

El siguiente ejemplo, tomado de la página 11 del manual del sistema, evalúa el uso de la expansión de la serie de Taylor . La implementación no es muy eficiente y el sistema ya la incluye en su biblioteca de subrutinas, pero el ejemplo sirve para dar una idea de la sintaxis del sistema. Tenga en cuenta que la división en el sistema se evalúa después de la multiplicación y que CP 1 es una rama condicional de la ecuación 1 si la última cantidad calculada es negativa:

 x = 0, 1 z = 1 - x 2 /2 + x 4 /2·3·4 - x 6 /2·3·4·5·6 + x 8 /2·3·4·5·6·7·8 - x 10 /2·3·4·5·6·7·8·9·10, IMPRIMIR x , z . x = x + .1, e = x - 1.05, CP 1, DETENER

Aplicaciones

Se escribieron pocas aplicaciones para el sistema. Una aplicación documentada, escrita por los propios Laning y Zierler, involucraba un problema en la aeronáutica. [ cita necesaria ] El problema requería siete sistemas de ecuaciones diferenciales para expresarse, y se le había encomendado al Whirlwind porque era demasiado grande para que lo manejara el analizador diferencial del MIT. Los autores, aprovechando la característica Runge-Kutta de su sistema de programación, produjeron un programa de 97 declaraciones en dos horas y media. El programa se ejecutó exitosamente la primera vez.

Influencia en FORTRAN

Algunas fuentes han dicho que el sistema Laning y Zierler fue la inspiración para FORTRAN . El propio John W. Backus admitió haber contribuido a esta idea errónea:

El efecto del sistema de Laning y Zierler en el desarrollo de FORTRAN es una cuestión que se ha visto confusa debido a muchas declaraciones erróneas por mi parte. Durante muchos años creí que se nos había ocurrido la idea de utilizar la notación algebraica en FORTRAN al ver una demostración del sistema de Laning y Zierler en el MIT. (Regreso [2] )

Después de revisar la documentación de la época, Backus se enteró de que el proyecto FORTRAN estaba "en marcha" cuando él y su equipo tuvieron la oportunidad de ver el trabajo de Laning y Zierler:

[N]osotros ya estábamos considerando el ingreso algebraico considerablemente más sofisticado que el del sistema de Laning y Zierler cuando escuchamos por primera vez sobre su trabajo pionero... [E]s difícil saber qué nuevas ideas, si es que hubo alguna, obtuvimos al ver el demostración de su sistema. (Regreso [2] )

Ver también

Referencias

  1. ^ Jenkins, Dennis (1 de abril de 2001). Dick, Steven J .; Garbe, Steve (eds.). "Automatización avanzada de vehículos y computadoras a bordo del transbordador". El vuelo de STS-1: computadora . NASA . Archivado desde el original el 14 de julio de 2022 . Consultado el 14 de julio de 2022 .
  2. ^ ab Backus, John Warner . La Historia de FORTRAN I, II y III. Actas Primera conferencia ACM SIGPLAN sobre Historia de los lenguajes de programación. San José, California, Estados Unidos. Archivado desde el original el 27 de agosto de 2005.(16 páginas)

Otras lecturas