Articulo de referencia

MATEMÁTICA

MATH-MATIC es el nombre comercial del compilador AT-3 ( Algebraic Translator 3 ) , un lenguaje de programación antiguo para las computadoras UNIVAC I y UNIVAC II . MATH-MATIC co...

MATH-MATIC es el nombre comercial del compilador AT-3 ( Algebraic Translator 3 ) , un lenguaje de programación antiguo para las computadoras UNIVAC I y UNIVAC II .

MATH-MATIC comenzó a escribirse alrededor de 1955 por un equipo liderado por Charles Katz bajo la dirección de Grace Hopper . Un manual preliminar [ 1 ] se produjo en 1957 y un manual final [ 2 ] al año siguiente.

Sintácticamente, MATH-MATIC era similar al lenguaje FLOW-MATIC de Univac, orientado a los negocios y de la misma época , diferenciándose en que proporcionaba expresiones de estilo algebraico y aritmética de punto flotante, y matrices en lugar de estructuras de registro.

Características destacadas

Las expresiones en MATH-MATIC podían contener exponentes numéricos, incluyendo decimales y fracciones, mediante una máquina de escribir personalizada. [ 3 ]

Los programas MATH-MATIC podrían incluir secciones de ensamblador en línea de código ARITH-MATIC y código máquina UNIVAC . [ 4 ]

El UNIVAC I tenía solo 1000 palabras de memoria, y su sucesor, el UNIVAC II, apenas 2000. MATH-MATIC permitía programas más grandes, generando automáticamente código para leer segmentos superpuestos de la cinta UNISERVO según fuera necesario. El compilador intentaba evitar la división de bucles entre segmentos. [ 5 ]

Influencia

Al proponer la colaboración con la ACM que dio lugar a ALGOL 58 , la Gesellschaft für Angewandte Mathematik und Mechanik escribió que consideraba a MATH-MATIC el lenguaje disponible más cercano a su propia propuesta. [ 6 ]

A diferencia de FORTRAN de Backus , MATH-MATIC no hacía hincapié en la velocidad de ejecución de los programas compilados. Las máquinas UNIVAC no tenían hardware de punto flotante , y MATH-MATIC se traducía mediante código pseudoensamblador A-3 ( ARITH-MATIC ) en lugar de directamente a código máquina UNIVAC, lo que limitaba su utilidad. [ 7 ]

Programa de ejemplo

Un ejemplo de programa MATH-MATIC: [ 8 ]

(2) ESCRIBA ALPHA . (2A) LEER ABC SERVO 4 ALMACENAMIENTO A SI CENTINELA SALTAR A LA ORACIÓN 8. (3) LEER SERVO DF 5 . (4) VARIAR Y 1 (0.1) 3 ORACIONES 5 A 6 . (5) X1 = (7*10 3 *Y*A*SIN ALFA) 3 / (B POW D+C POW E) . (6) ESCRIBIR Y EDITAR AYDE X1 SERVO 6 . (7) PASAR A LA ORACIÓN 2A. (8) CERRAR LA ENTRADA Y REBOBINAR LA ORACIÓN 3. (9) ORACIÓN DE SALIDA CERRADA 6 . (10) LEA EL SERVO FGHN 4 ALMACENAMIENTO A SI EL CENTINELA SALTA A LA ORACIÓN 20. (11) EJECUTAR LA ORACIÓN 3. (12) X2 = (3 RAÍZ (EG)+LOG (D+N)) / (F 2.6 *EXP H) . (13) ESCRIBIR EDITAR FDF X2 SERVO 6 . (16) SALTAR A LA ORACIÓN 10. (20) ALTO.

Notas

  1. Ceniza (1957)
  2. Univac (1958)
  3. Sammet (1969) pág. 135
  4. Sammet (1969) pág. 137
  5. Sammet (1969) pág. 137
  6. Bemer (1969) pág. 161
  7. Knuth (1976) pág. 90
  8. Univac (1958) pág. 8

Referencias

  • Ash, R.; Broadwin, E.; Della Valle, V.; Greene, M.; Jenny, A.; Katz, C. ; Yu, L. (1957-04-19). Manual preliminar para los sistemas MATH-MATIC y ARITH-MATIC para la traducción y compilación algebraica para UNIVAC I y II (PDF) (Informe técnico). Filadelfia: Remington Rand Univac. Archivado del original (PDF) el 26 de diciembre de 2014. Recuperado el 19 de marzo de 2016 .
  • Bemer, Robert W. (1969), Una historia político-social de Algol (con una cronología en forma de libro de registro) (PDF) , consultado el 20 de marzo de 2016.
  • Knuth, Donald ; Trabb Pardo, Luis (agosto de 1976). El desarrollo temprano de los lenguajes de programación (Informe técnico). Departamento de Ciencias de la Computación, Facultad de Humanidades y Ciencias, Universidad de Stanford . Recuperado el 19 de marzo de 2016 .
  • Sammet, Jean (1969). Lenguajes de programación: historia y fundamentos . Prentice-Hall. págs.  132, 135–137 . ISBN 978-0-13-729988-1.
  • Sistema de programación Univac MATH-MATIC (PDF) (Informe técnico). Remington Rand Univac. 1958. Consultado el 19 de marzo de 2016 .
  • "MATH-MATIC — Autocódigo orientado matemáticamente (lenguaje informático)" . Enciclopedia histórica en línea de lenguajes de programación . Archivado del original el 2 de abril de 2016. Consultado el 20 de marzo de 2016 .
  • "UNICODE — UNIVAC híbrido de FORTRAN y MATH-MATIC" . Enciclopedia histórica en línea de lenguajes de programación . Archivado del original el 3 de abril de 2016. Consultado el 20 de marzo de 2016 .