El lenguaje
COBOL (acrónimo de COmmon Business-Oriented Language, Lenguaje Común Orientado
a Negocios) fue creado en el año 1959 con el objetivo de crear un lenguaje de
programación universal que pudiera ser usado en cualquier ordenador (ya que en
los años 1960 existían modelos de ordenadores incompatibles entre sí), y que
estuviera orientado principalmente a los negocios, es decir, a la llamada
informática de gestión.
Historia
En la
creación de este lenguaje participó la comisión CODASYL, compuesta por
fabricantes de ordenadores, usuarios y el Departamento de Defensa de Estados
Unidos en mayo de 1959. La definición del lenguaje se completó en poco más de
seis meses, siendo aprobada por la comisión en enero de 1960. El lenguaje COBOL
fue diseñado inspirándose en el lenguaje Flow-Matic de la oficial Grace Hopper
y el IBM COMTRAN de Bob Bemer, ya que ambos formaron parte de la comisión.
Gracias a la
ayuda de los usuarios COBOL evolucionó rápidamente y fue revisado de 1961 a
1965 para añadirle nuevas funcionalidades. En 1968 salió la primera versión
ANSI del lenguaje, siendo revisada posteriormente en 1974 (COBOL ANS-74), 1985
(COBOL ANS-85, ampliado en 1989 con funciones matemáticas, finalizando el
estándar actual más usado, conocido como COBOL-ANSI), y en 2002 (COBOL
ANS-2002).
El último
estándar es el COBOL 2014 que entre otras, incluye una nueva característica que
permite gestión dinámica de la memoria (OCCURS DYNAMIC).
Existe una
versión IBM Enterprise Cobol, actualizada regularmente y lanzada en 1991, usada
en sistemas Host (Mainframe) bajo z/OS.
Para Windows
y Linux, hay varios compiladores e IDE-s que existen desde hace tiempo y se
siguen modernizando.
MicroFocus
Visual Object COBOL For Windows 95 (el IDE más antiguo permitiendo crear GUI-s,
soporta WinAPI)
MicroFocus
NetExpress (el IDE ya moderno permitiendo interactuar con Java, EJB, C. También
OO COBOL (orientado a objetos))
MicroFocus Visual
COBOL para Visual Studio y Eclipse (el IDE actual, con WebServices)
Fujitsu COBOL
Fujitsu NetCOBOL for Windows
Fujitsu
NetCOBOL for .NET
Fujitsu
PowerCOBOL (forma parte del paquete NetCOBOL for Windows, creando aplicaciones
GUI basadas en controles ActiveX, soporta WinAPI).
También
actualmente existen:
GNU Cobol
(antiguo Open COBOL, que es Open Source)
Raincode
COBOL
COBOL-IT
Características
COBOL fue
diseñado para escribir programas autodocumentados, mediante separación
divisiones para la declaración de variables de los procedimientos y una
división para llevar un registro de quién solicitó el programa y quienes lo
escribieron. A pesar de sus objetivos la estructura que tenía en su inicio era
insuficiente para la estructura modular que requieren los sistemas de los
negocios corporativos.
Sus tipos de
datos estaban pensados para manejar archivos ordenados, por lo que cuenta con
estructuras para registros y variantes y la declaración de llaves para los
archivos indexados.
Tipos de
datos atómicos que se definen mediante la palabra clave PICTURE se pueden
definir campos estructurados. Lo que permite definir números con los que se
evita errores de redondeo en los cálculos que se producen al convertir los
números a binario y que son inaceptables en temas comerciales, COBOL puede
emplear y emplea por defecto números en base diez.
Para
facilitar la creación de programas en COBOL, la sintaxis del mismo fue creada
de forma que fuese parecida al idioma inglés, evitando el uso de símbolos que
se impusieron en lenguajes de programación posteriores.
Pese a esto,
a comienzos de los ochenta se fue quedando anticuado respecto a los nuevos
paradigmas de programación y a los lenguajes que los implementaban. En la
revisión de 1985 se solucionó, incorporando a COBOL variables locales,
recursividad, reserva de memoria dinámica y programación estructurada.
En la
revisión de 2002 se le añadió orientación a objetos, aunque desde la revisión
de 1974 se podía crear un entorno de trabajo similar a la orientación a
objetos, y un método de generación de pantallas gráficas estandarizado.
Antes de la
inclusión de las nuevas características en el estándar oficial, muchos fabricantes
de compiladores las añadían de forma no estándar. En la actualidad este proceso
se está viendo con la integración de COBOL con Internet. Existen varios
compiladores que permiten emplear COBOL como lenguaje de scripting y de
servicio web. También existen compiladores que permiten generar código COBOL
para la plataforma .NET y EJB.
Programa Hola
mundo
IDENTIFICATION DIVISION.
PROGRAM-ID. HOLAMUNDO.
PROCEDURE DIVISION.
DISPLAY 'Hola mundo'
GOBACK
.
Empleo
Pese a que
muchas personas creen que el lenguaje COBOL está en desuso, la realidad es que
casi todos los sistemas que requieren gran capacidad de procesamiento por lotes
(Batch), tanto las entidades bancarias como otras grandes empresas con sistemas
mainframes utilizan COBOL. Esto permite garantizar la compatibilidad de los
sistemas antiguos con los más modernos, así como tener la seguridad de que el
lenguaje es perfectamente estable y probado. Según un informe de Gartner Group
de 2005, el 75% de los datos generados por negocios son procesados por
programas creados en COBOL, y en otro informe de 1997 estima que el 80% de los
300.000 millones de líneas de código existentes están creados en COBOL,
escribiéndose 5.000 millones de líneas nuevas de COBOL cada año. Con todo eso,
hoy por hoy, la programación en COBOL es uno de los negocios más rentables del
mundo de la informática. En el resto de aplicaciones el COBOL ha caído en
desuso, reemplazado por lenguajes más modernos o versátiles.
Curiosidades
En el código
que se ve de la programación del cyborg de la película The Terminator (1984),
algunas de las sentencias están escritas en Cobol.
Comentarios
Publicar un comentario