Articulo de referencia

Lenguaje de programación asociativo

El lenguaje de programación asociativa (APL) es un lenguaje de bases de datos desarrollado por los Laboratorios de Investigación de General Motors en 1966. [ 1 ] APL se desarrol...

El lenguaje de programación asociativa (APL) es un lenguaje de bases de datos desarrollado por los Laboratorios de Investigación de General Motors en 1966. [ 1 ]

APL se desarrolló para proporcionar funciones de acceso y manipulación de datos en lenguaje de alto nivel para dar soporte al sistema de gráficos interactivos por computadora CADANCE de GM . Fue diseñado para integrarse con PL/I . [ 2 ] [ 3 ]

Se supone que la base de datos subyacente sigue el modelo de red . El primer gestor de bases de datos de GM se implementó mediante listas enlazadas , pero en 1977 se desarrolló el "Virtual Associative Access Manager" (VAAM) para usar almacenamiento virtual e implementar relaciones de entidades como matrices. [ 1 ] : p.86 Posteriormente, APL se portó al sistema operativo MCTS .

Descripción

APL consta de seis sentencias, CREATE, INSERT, FIND, FOR EACH, REMOVE, y DELETE, [ 1 ] : p.85 y funciones diversas como contar el número de miembros en un conjunto, determinar la longitud o el tipo de una entidad, o localizar una entidad por nombre. [ 1 ] : p.95

  • Crear es sinónimo de Asignar. Asigna espacio de almacenamiento para una variable. Se puede especificar un archivo o conjunto donde se asignarán los datos.
  • Delete es sinónimo de Free. Delete libera una variable base y, opcionalmente, la elimina de todos los conjuntos a los que pertenece.
  • La función Find localiza una entidad que pertenece a un conjunto o contenedor según las condiciones especificadas. ELSESi no se encuentra ninguna entidad, se ejecuta una cláusula opcional.
  • La instrucción For Each encabeza un grupo de instrucciones que se ejecutarán para todas las entidades o conjuntos que coincidan con una condición específica.
  • La función Insertar inserta una entidad en un conjunto especificado. Opcionalmente, se puede especificar la posición de la nueva entidad con respecto a otros elementos del conjunto.
  • Establecemos una variable de localización para hacer referencia a un conjunto específico.
  • Remove elimina una entidad de un conjunto.

Implementación

Las sentencias APL se implementaron inicialmente como macros de preprocesador PL/I , que se traducían en llamadas al gestor de bases de datos. Posteriormente, el dialecto Apple PL/I de GM admitió APL directamente en el lenguaje.

Referencias

  1. 1 2 3 4 Price, Carol (1978), "APL/VAAM" (PDF) , Publicación de la Conferencia de la NASA 2055: Ingeniería y Gestión de Datos Científicos , NASA, págs . 85–97 
  2. Bachman, Charles (enero de 2006). «Una entrevista con Charles W. Bachman» . Entrevistas de historia oral de la ACM . doi : 10.1145/1141880.1141882 . ISBN 978-1-4503-1771-9. Consultado el 29 de junio de 2024 ."George [Dodd] construyó un sistema similar a un IDS muy atractivo, llamado 'Lenguaje de Programación Asociativo' (APL)".
  3. Dodd, George G. (noviembre de 1966). "APL: Un lenguaje para el manejo de datos asociativos en PL/I" . AFIPS '66 (otoño): Actas de la conferencia conjunta de informática de otoño del 7 al 10 de noviembre de 1966. págs. 677–684 . doi : 10.1145/1464291.146436 (inactivo el 11 de julio de 2025). ISBN  978-1-4503-7893-2. Consultado el 2 de julio de 2024 .{{cite book}}: CS1 maint: DOI inactivo desde julio de 2025 ( enlace )