ABC fue
desarrollado a principios de los 80 en el Centrum voor Wiskunde en Informática
(CWI) (un centro de investigación holandés de carácter oficial que, entre otras
cosas, actualmente alberga la oficina central del W3C) como una alternativa al BASIC. Como éste, fue pensado para
principiantes, aunque su evolución posterior lo hace también adecuado para
programadores avanzados. Es muy fácil de aprender y de usar, y el código es
compacto pero legible.
Tipos de datos
Este lenguaje tiene también interés histórico, ya
que es el principal antecedente de Python. En esta entrevista[1],
Guido Van Rossum, creador de Python, explica la influencia de ABC en Python así
como algunos de sus puntos débiles. ABC tiene sólo cinco tipos de datos
básicos:
1. Números (enteros exactos de cualquier tamaño y números no exactos)
2. Textos (strings de cualquier longitud)
3. Listas (sus elementos tienen que ser del mismo tipo y siempre están ordenados)
4. Compuestos (equivalentes a registros sin nombres de campo)
5. Tablas (son listas con índices o claves).
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
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
En castellano:
CÓMO VOLVER el documento de las palabras:
PUESTO {} EN la colección
PARA la línea EN el documento:
PARA la palabra EN línea partida:
SI colección de la palabra not.in:
INSERTE la palabra EN la colección
de la VUELTA de la colección
No hay comentarios:
Publicar un comentario