El lenguaje de programación de la Universidad de Cornell (también llamado CUPL ) es un lenguaje de programación procedimental desarrollado en la Universidad de Cornell a finales de la década de 1960. [ 1 ]
CUPL se basaba en un lenguaje de programación anterior desarrollado por Cornell, CORC . Se utilizaba para impartir clases introductorias de programación informática. [ 2 ]
CUPL fue desarrollado por Richard W. Conway , [ 3 ] WL Maxwell, G. Blomgren, Howard Elder, H. Morgan, C. Pottle, W. Riddle y Robert Walker. CUPL tenía una sintaxis muy simple, similar a BASIC y PL/I . El procesador fue diseñado para ofrecer amplias capacidades de corrección de errores y diagnóstico. Esto permitiría que los programas de los estudiantes se ejecutaran incluso si contenían errores sintácticos menores. El compilador también incluía capacidades de corrección ortográfica, de modo que si un nombre de variable se referenciaba solo una vez, el compilador asumiría que se trataba de un error ortográfico de algún otro nombre previsto.
CUPL también ofrecía un amplio conjunto de operaciones matriciales y asignación dinámica de memoria en tiempo de ejecución. En aquel entonces, el ordenador de Cornell era un sistema de procesamiento por lotes IBM System/360 Modelo 40 con solo 64 KB de memoria principal . CUPL podía procesar rápidamente un gran número de programas de estudiantes al permanecer residente en la memoria principal, pero el compilador ocupaba 58 KB de memoria, dejando solo una pequeña cantidad para el código del programa y el almacenamiento de variables. [ 1 ]
Proyectos derivados
A partir de CUPL surgieron otros proyectos de lenguajes de programación. El compilador de CUPL se rediseñó para implementar un subconjunto del lenguaje de programación PL/I, denominado PL/C . PL/C conservó las funciones de diagnóstico y corrección de errores de CUPL.
Audio CUPL era una implementación para aceptar instrucciones verbales de CUPL pronunciadas por el programador. Cada programador entrenaba el sistema pronunciando primero un conjunto estándar de palabras del vocabulario de CUPL como referencia. [ 4 ]
Implementación de la retrocomputación
Existe una implementación de CUPL y CORC en C moderno para sistemas tipo Unix que incluye tanto transcripciones de los manuales originales como una colección de programas en estos lenguajes. Está disponible en el Museo de Retrocomputación. [ 5 ]
Referencias
- 1 2 Conway, Richard W. ; Maxwell, William L. (enero de 1968). CUPL: un enfoque para las instrucciones de computación introductorias . Ciencias de la Computación (Informe técnico). Universidad de Cornell . 68-4 . Recuperado el 15 de septiembre de 2022 .
- ↑ Ashlee Vance ; Jeff Broido (18 de noviembre de 2008). "Enseñando a todos a hablar el idioma de Cornell" . The New York Times .
- Aprendí por mi cuenta el idioma estudiantil de Cornell, CUPL.
- ↑ David Gries (31 de julio de 2015). "Una conversación con Richard W. Conway" .
- ↑ Elder, Howard A. (julio de 1969). Sobre la viabilidad de la entrada de voz a un sistema de procesamiento informático en línea . Ciencias de la Computación (Informe técnico). Universidad de Cornell . 69-38 . Recuperado el 15 de septiembre de 2022 .
- ↑ Museo de la Retroinformática
Enlaces externos
- Página de recursos para CUPL 1.6 , que proporciona código binario y fuente, así como información general sobre CUPL y CORC.
- Lenguajes de programación educativa
- Lenguajes de programación estructurados
- Lenguajes de programación procedimental
- Familia de lenguajes de programación PL/I
- Lenguajes de programación creados en la década de 1960