ABC (lenguaje de programación)

De Wikipedia, la enciclopedia libre
ABC (lenguaje de programación)
Centrum Wiskunde & Informatica
https://homepages.cwi.nl/~steven/abc/
Información general
Apareció en 1975
Diseñado por Lambert Meertens y Steven Pemberton
Influido por SETL

ABC es un lenguaje de programación imperativo de propósito general y entorno de programación desarrollado en el Centrum Wiskunde & Informatica de Países Bajos por Leo Geurts, Lambert Meertens y Steven Pemberton. Es interactivo, estructurado, de alto nivel y está pensado para ser utilizado en lugar de BASIC, Pascal o AWK. No pretende ser un lenguaje de programación de sistemas, sino que está destinado a la enseñanza o la creación de prototipos.

El lenguaje tuvo una gran influencia en el diseño del lenguaje de programación Python; Guido van Rossum, quien desarrolló Python, trabajó anteriormente durante varios años en el sistema ABC a mediados de los años ochenta.[1][2]

Características[editar]

Sus diseñadores afirman que los programas ABC suelen tener alrededor de una cuarta parte del tamaño de los programas equivalentes de Pascal o C, y son más legibles. Las características clave incluyen:

  • Solo cinco tipos de datos básicos
  • No requiere declaración de variables.
  • Soporte explícito para programación top-down.
  • La anidación de instrucciones se indica mediante sangría, a través de la regla de fuera de juego.
  • Precisión arbitraria, Listas y cadenas de tamaño ilimitado, y otras características que admiten la ortogonalidad y la facilidad de uso para los principiantes.

Como sucede con otros intérpretes, ABC es, además de un lenguaje de programación, un entorno interactivo de trabajo. No requiere de declaraciones de variables, cuenta con el apoyo de la programación top-down. Proporciona una precisión aritmética infinita, ilimitada listas de cadenas, y otras características que da gran facilidad al uso de los principiantes. Sus diseñadores afirman que los programas de ABC son típicamente alrededor de una cuarta parte del tamaño de los programas equivalentes en lenguaje Pascal o en lenguaje C, y además es más legible.

Originalmente fue una aplicación monolítica, dando lugar a una incapacidad para adaptarse a las nuevas exigencias, como la creación de una interfaz gráfica de usuario. Con ABC no se podía acceder directamente al sistema de archivos subyacente y el sistema operativo.

Incluye un entorno de programación con sintaxis de edición-dirigida, sugerencias, variables persistentes y múltiples espacios de trabajo.

ABC está disponible como un intérprete / compilador, actualmente en la versión 1.05.02. Además ha sido portado a Unix, DOS, Atari, y Apple Macintosh.

ABC también tuvo una gran influencia en el diseño del lenguaje de programación Python, Guido van Rossum, quien desarrolló Python, que anteriormente trabajó durante varios años en el sistema ABC a principios de los años 1980.

Ejemplo[editar]

Un ejemplo del lenguaje, de una función para recoger el conjunto de todas las palabras de un documento:

HOW TO RETURN words document:
   PUT {} IN collection
   FOR line IN document:
      FOR word IN split line:
         IF word not.in collection:
            INSERT word IN collection
   RETURN collection

Referencias[editar]

  1. The A-Z of Programming Languages: Python (enlace roto disponible en Internet Archive; véase el historial, la primera versión y la última)..
  2. An Interview with Guido van Rossum. (enlace roto disponible en Internet Archive; véase el historial, la primera versión y la última).

Lectura adicional[editar]