Si en este momento todos los servidores que ejecutan COBOL en el mundo dejasen de funcionar al unísono, la civilización moderna colapsaría antes del amanecer. Esta es una afirmación muy fuerte, quizás exagerada a los ojos de muchos, pero la realidad es que es exactamente lo que pasaría.
Imagínalo por un momento. Vas con tu tarjeta de débito a un cajero y quieres retirar algo de efectivo, pero no funciona. Quieres hacer un pago por tarjeta usando un punto de venta bancario, y tampoco funciona. Vas al banco a revisar tu cuenta, y no hay sistema y todo es un caos. Ahora imagina, la situación que vives con tu dinero, pasándole a todos el mundo al mismo tiempo, incluso plataformas de pagos digitales como PayPal o Stripe, tienen que dejar de operar porque su conexión bancaria está caída a nivel global.
Y no, no es una hipérbole de ciencia ficción, es la realidad de un lenguaje de programación nacido en 1959 que, sesenta y siete años después, sigue procesando el corazón financiero del planeta. Porque mientras las tendencias tecnológicas nacen y mueren en ciclos de pocos años, COBOL (Common Business-Oriented Language) permanece inmutable, como un coloso de hormigón armado en medio de un bosque de rascacielos de cristal, y nadie ha podido hacer mella en sus logros.
Pero ¿Cómo llegamos aquí? Pues esa es la historia que queremos contarte aquí.
La gran caja gris
A finales de la década de 1950, la informática era un archipiélago de islas inconexas. Cada fabricante de ordenadores, con IBM a la cabeza, diseñaba sus propias máquinas con sus «propios lenguajes de programación». Eso significaba que si una empresa cambiaba de hardware, tenía que reescribir todo su software desde cero. Por supuesto, esto de «programar» más bien era tejer cientos de cables para cambiar la lógica del computador y programarlo para cierta tarea. Un proceso lento, complejo y que solo unos pocos elegidos podían hacer. La llegada de la programación por tarjetas perforadas no cambio mucho esa realidad, solo la hizo un poco más práctica.

Ante esa situación, el Pentágono, harto de financiar esta ineficiencia, convocó en mayo de 1959 a un comité de expertos en el Instituto Bachillerato de la Universidad de Pensilvania: el comité CODASYL (Conference on Data Systems Languages). Entre las mentes brillantes que dieron forma a este esfuerzo destacó la capitana (y posterior contraalmirante) de la Marina de los EE.UU., Grace Murray Hopper.
Aunque no diseñó COBOL sola, su filosofía fue la piedra angular: la programación no debía reservarse a matemáticos puros que escribieran en símbolos crípticos. Debía aproximarse al inglés estándar. Fue ella quien dio origen a los lenguajes de programación escritos que vemos ahora en el mundo digital, con la creación del compilador A0 en 1952 y luego con B0 o FLOW-MATIC desarrollado en 1955. En comparación, FORTRAN, desarrollado por IBM, es el primer lenguaje de alto nivel de uso en producción, y data de 1957.
¿Cómo te investiga Hacienda? España blinda la IA que selecciona a los contribuyentes
De FLOW-MATIC a COBOL
FLOW-MATIC era un lenguaje de alto nivel a todas luces. Escribías en inglés instrucciones específicas, el compilador tomaba esto y lo llevaba a lenguaje de máquina para que el computador hiciera su trabajo. Aquí tienes un ejemplo de un programa en FLOW-MATIC

Estas 18 líneas de código lo que hacen es hacer una comparación de inventarios de productos (lista A y B) y divide los mismos entre los que tienen precio y los que no. Una función básica para el mantenimiento de un almacén de productos, algo que en un computador por medios usuales era complejo de programar, se resume a 18 líneas que cualquier persona puede leer.
Sin embargo, FLOW-MATIC tenía limitaciones, Hopper era consciente de eso y eso es lo que propuso cambiar en CODASYL, y vaya que lo logro. COBOL nació con un propósito radicalmente pragmático: ser un lenguaje comercial, legible y portátil. Su sintaxis no usaba abstracciones matemáticas complejas, sino verbos y estructuras narrativas (ADD, SUBTRACT, MULTIPLY, MOVE, PERFORM). Estaba pensado para que los ejecutivos de negocios pudieran, al menos, leer el flujo de la lógica interna de sus sistemas. El resultado fue un lenguaje verboso, directo y asombrosamente eficiente para manejar archivos de datos masivos y operaciones aritméticas de precisión exacta.
La evolución de COBOL y sus campos de batalla
Pero ¿Qué paso con este lenguaje de programación? ¿Por qué siendo tan relevante nadie parece usarlo ahora? Pues aquí hay un poco de mito y elitismo. Por un lado, el lenguaje se consolidaba como el motor comercial del planeta, con empresas y especialmente bancos, adoptando el mismo, pero por el otro, la academia formal le declaró la guerra. El ataque más célebre y despiadado provino de Edsger W. Dijkstra, pionero de la ciencia de la computación y premio Turing, quien comentó:
El uso de COBOL deforma la mente; su enseñanza debería, por lo tanto, ser considerada como un delito criminal.
Para Dijkstra y los puristas de la programación estructurada, la sintaxis verbosa de COBOL, su incapacidad inicial para soportar recursividad y, sobre todo, su dependencia absoluta del descontrolado comando GO TO (que saltaba de una línea a otra rompiendo la lógica del código), daban como resultado un inmanejable «código espagueti». Consideraban que el lenguaje era inherentemente defectuoso e incapaz de albergar un pensamiento matemático limpio.
Y aquí hay que destacar algo: COBOL es un lenguaje Turing Incompleto, es decir, no puede realizar computación infinita. Todo programa COBOL tiene un principio y un fin, un estado definido de forma algorítmica, lo que lo hace muy seguro. Curiosamente, Bitcoin y su Bitcoin Script también siguen está lógica, aplicando un lenguaje Turing Incompleto.

Elitismo académico
Para los académicos esto era un atraso. Pensar en lenguajes limitados era absurdo, querían lenguajes avanzados, llegará a la IA y la robótica avanzada, querían el mundo de los Supersónicos, y COBOL era una piedra en el zapato.
Pero, a pesar de los dardos académicos, la industria no podía darse el lujo de abandonar lo que ya funcionaba. Así que, en lugar de morir, COBOL respondió madurando. A través de las décadas, fue asimilando cada una de las grandes reformas de la ingeniería de software para tapar sus grietas y adaptarse a los tiempos modernos. Sí, el COBOL de los 60 no es el mismo que vemos ahora, aunque mantengan la compatibilidad.
Software libre: El andamio invisible de la civilización de internet
Una evolución lineal
Y así tenemos esta evolución lineal:
- COBOL-68, la era de la Gran Unificación. Aquí llego el primer estándar oficial de la mano de ANSI. Consolidó las diferentes variantes que los fabricantes de hardware habían creado, logrando una portabilidad real entre máquinas de distintas marcas por primera vez en la industria.
- COBOL-74, la llegada de herramientas de estructura. Introdujo los primeros conceptos de diseño modular y manejo de archivos mejorados. El lenguaje empezaba a reaccionar a las corrientes teóricas de la época, aunque el GO TO seguía dominando el panorama.
- COBOL-85, el fin del Código Espagueti. La verdadera respuesta estructural a las críticas de Dijkstra. Introdujo terminadores de ámbito explícito (como END-IF, END-READ, END-PERFORM), permitiendo anidar estructuras lógicas de manera limpia y eliminando casi por completo la necesidad de usar saltos incondicionales de código.
- COBOL 2002, el Salto a los Objetos. Un cambio radical de paradigma. Rompió su tradicional naturaleza puramente procedimental al añadir soporte nativo para Programación Orientada a Objetos (POO). A partir de este estándar, el viejo motor pudo encapsular datos y métodos, facilitando su integración con librerías modernas.
- COBOL 2014 y 2023, a la nube e interoperabilidad. Las revisiones modernas añadieron soporte nativo para el procesamiento de formatos de intercambio de datos globales como XML y JSON. Los compiladores actuales de IBM, GCC o Micro Focus permiten que el código interactúe con APIs REST, se despliegue en contenedores Docker y corra en entornos de nube pública (AWS, Azure) optimizado para arquitecturas x86 tradicionales.
Software libre ante todo
Lo más curioso de todo, es que el ecosistema COBOL (compiladores) son en su mayoría software libre. Salvo las implementaciones de IBM y Micro Focus, el resto de implementaciones son totalmente libres. Es más curioso aún, las extensiones privativas de IBM y Micro Focus, están tan bien documentadas y accesible, que opciones libres cono GnuCOBOL y GCC COBOL (ahora proyectos unidos) tienen capacidad de usarlas sin problemas.
La revolución silenciosa: cómo ARM está rediseñando el futuro de la informática
De hecho, GCC la suite compiladores de software libre más grande e importante del sector, tiene soporte para COBOL 2002, 2014 y 2023, ofreciendo el mayor soporte software libre a este lenguaje. Esto envía un poderoso mensaje: COBOL no está muerto, sigue en el corazón del mundo financiero y no saldrá de allí.
Las venas del sistema financiero global
Y esto nos lleva a la siguiente pregunta ¿Por qué la banca prefiere pagar salarios astronómicos a desarrolladores senior o traer a programadores jubilados de vuelta antes que apagar sus mainframes? La respuesta está en la escala del diseño de COBOL: fue concebido para la aritmética decimal exacta. A diferencia de los lenguajes modernos que usan coma flotante binaria (que puede introducir sutiles errores de redondeo en transacciones financieras millonarias), COBOL procesa los números exactamente como los humanos cuentan el dinero.
Las siguientes cifras describen el impacto de COBOL en el sector financiero actual:
- 95% es el porcentaje de las transacciones con tarjetas de crédito a nivel global que pasan, en algún punto de su ruta de autorización, a través de código escrito en COBOL.
- 80% de las transacciones comerciales presenciales en el mundo dependen directamente de este lenguaje.
- Como mínimo, 3 billones de dólares, es el volumen aproximado de transacciones diarias que gestionan de manera segura los sistemas COBOL a nivel global.
- Se estima que hay más de doscientos mil millones de líneas de código COBOL activas en producción en la infraestructura crítica global, superando la cantidad de código escrito en muchos de los lenguajes de moda combinados para sistemas de misión crítica.
Ese es el monstruo de COBOL, un rival de más de 60 años, que lenguajes como C/C++, JAVA, ni siquiera Rust, podrán vencer.
Y es que COBOL es el testimonio vivo de la resiliencia en la ingeniería de software. No es un lenguaje obsoleto; es una infraestructura base, el equivalente digital a las tuberías de agua o los túneles del metro de una megaciudad. Mientras el mundo celebra la llegada de inteligencias artificiales conversacionales y arquitecturas efímeras en la nube, en el sótano digital del planeta hay un verbo PERFORM escrito hace medio siglo que se acaba de ejecutar con éxito un millón de veces en el último segundo. Y lo seguirá haciendo mañana, sin quejarse, sin fallar.

