SETL


SETL (SET Language) es un lenguaje de programación de muy alto nivel basado en la teoría matemática de conjuntos . Fue desarrollado originalmente por (Jack) Jacob T. Schwartz en el Instituto Courant de Ciencias Matemáticas de la Universidad de Nueva York (NYU) a fines de la década de 1960.

SETL proporciona dos tipos básicos de datos agregados: conjuntos desordenados y secuencias (estas últimas también llamadas tuplas ). Los elementos de conjuntos y tuplas pueden ser de cualquier tipo arbitrario, incluidos los propios conjuntos y tuplas. Los mapas se proporcionan como conjuntos de pares (es decir, tuplas de longitud 2) y pueden tener tipos de rango y dominio arbitrarios. Las operaciones primitivas en SETL incluyen la pertenencia a conjuntos, la unión, la intersección y la construcción de conjuntos de potencia, entre otros.

SETL proporciona expresiones booleanas cuantificadas construidas utilizando los cuantificadores universales y existenciales de la lógica de predicados de primer orden .

Las implementaciones de SETL estaban disponibles en DEC VAX , IBM/370 , la estación de trabajo SUN y APOLLO . [1] En la década de 1970, SETL se transfirió a BESM-6 , ES EVM y otros sistemas informáticos rusos. [2]

SETL se utilizó para una implementación temprana del lenguaje de programación Ada , denominado traductor NYU Ada/ED. [3] Más tarde se convirtió en la primera implementación validada de Ada, certificada el 11 de abril de 1983. [4]

Según Guido van Rossum , " el predecesor de Python , ABC , se inspiró en SETL: Lambert Meertens pasó un año con el grupo SETL en la NYU antes de llegar al diseño final de ABC". [5]