EDICIóN GENERAL
227 meneos
3884 clics
La belleza del COBOL [ENG]

La belleza del COBOL [ENG]

Un código bien escrito es una obra de arte. Es una idea abstracta hecha real. Es como la arquitectura. El COBOL es la lengua base de muchos bancos y sistemas. Lo primero que necesité para aprender COBOL es un IDE donde escribir y programar a la vez. Un buen IDE para COBOL es OpenCobolIDE.

| etiquetas: cobol , belleza
116 111 3 K 726 cultura
116 111 3 K 726 cultura
Comentarios destacados:                    
#1 Si esto llega a portada me tatuo "Hola mundo" en COBOL en la parte del cuerpo que prefiráis.
Si esto llega a portada me tatuo "Hola mundo" en COBOL en la parte del cuerpo que prefiráis.
#1 en la frente, por favor
#1 Vas a necesitar una zona muy amplia. #2 No, ahí no cabe. #4 Ahí menos.
#5 Me vale con un PERFORM
#2 No le cabe ahí, mejor en la espalda.
#1 Se me ocurre una parte de tu cuerpo puede sustituir una de las O...:-*
#3 CooBOL
#1 En el pijo, pero con la perforadora de tarjetas original.
#1 Ya he votado la noticia. Va camino de portada.
#8 Yo también la voto, pero por eso de que un programa es una obra de arte, idea que comparto.
#1 Vamos a ello amigo.
#1 Joder, hacía 25 años que veía una línea de COBOL....
#1 Iba a votar la noticia, como tengo por costumbre con las noticias de tecnología, y esta vez con motivo extra; y llego tarde.
#1 DISPLAY "Hola mundo"
#14 Oye, pues no es tan largo :-D
#16 Mételo dentro de un IDENTIFICATION DIVISION, PROCEDURE DIVISION etc y verás si crece...
#1 No lo vas a hacer, pero en el antebrazo ya me vale. Al menos no dará tanta vergüenza como un Hola Mundo en PHP y puedes mostrarlo
#1 Tatúate DECIMAL POINT IS COMMA
#1 Yo solo recuerdo que ya está en la portada...  media
#22 Lo estaba con 35 votos, y la gente sigue meneando.
#23 Si, pero nadie se lo había recordado. Yo lo he visto cuando he entrado.
#1 meneo por ti :troll:

Por cierto que feo es el puto cobol, madre de dios
#25 Durante 6 meses tuve que trabajar en una entidad bancaria programando en PL/I (primo hermano del Cobol).

Han sido los peores 6 meses de mi vida. Estos lenguajes son aberraciones que si bien sirvieron para sentar las bases de la programación futura - cosa que es de agradecer, hoy en día no son más que aberraciones informáticas que palidecen ante cualquier lenguaje moderno. Y frustrantes porque todo es arcaico, primitivo y sin elegancia por más que se la quiera dar. El mismo ensamblador es…   » ver todo el comentario
#38 Por favor, que no es lo mismo. En PL1 tienes procedimientos con argumentos y tienes funciones, tipos de datos (opcionales, pero es arreglable), cuatro formas de gestión de memoria, punteros si los quieres, librerías de funciones, precompilador, etc.

El que se pueda emular un programa COBOL con PL1 no significa que sean lo mismo ni de lejos. PL1 es mucho más potente.
#38 De ahí las hojas de codificación amigo. Debo tener miles guardadas en alguna caja del garaje.
En cualquier caso, probablemente cuando hablas de PL/1, no te refieres directamente a COBOL, sino a algún transpiler desde PL/1 a CICS / cobol (algunos aún en RM/85). PL era un poco más sofisticado. Pero COBOL, siendo arcaico es más como un peine. Si funciona no lo cambies. Y de hecho lo hace. ¿Aburido? un rato.
Soy defensor por que yo pico en esto jaja y se me queda una espinita si no digo nada...
COBOL es el lenguaje de programación por excelencia, tanto en Banca como en Seguros, prueba de ello es que se lleva utilizando 60 años en estos sectores. Otra gran ventaja frente al resto de lenguajes es que IBM te garantiza su funcionamiento al 100% sin errores, y esto no lo dice cualquiera. La idea de tramitar en una noche varios millones de registros de alto riesgo no gusta en otras plataformas, no te…   » ver todo el comentario
#53 Resumiendo para un junior como yo sería que Cobol es tan básico que no se le puede hacer backdoor ni hackear ya que es tan plano que se conoce todo no?
#53 Como exprogramador de COBOL (ganando un pastizal bien entrados los años 90), como decíamos, si algo funciona, déjalo estar; algo que no se puede decir lo mismo con lenguajes digamos más sofisticados, ya sea a bajo o alto nivel.
LONG LIFE PROCEDURE DIVISION. Eso sí, boring as hell.
#53 COBOL se resume en: Si funciona no lo toques. Fin.
#60 "Si funciona no lo toques."

¿Cómo se codificaría eso en COBOL? :roll: xD
#62
------------------------------------------------------------------------------...
________ A 1 B ________ 2 __________ 3 ___________ 4 ____...
12345678901234567890123456789012345678901234...
------------------------------------------------------------------------------...
_______ IDENTIFICATION DIVISION.
_______ PROGRAM-ID. MNM.
_______ ENVIRONMENT DIVISION.
_______ PROCEDURE DIVISION.
________ 111111.
_________ DISPLAY "Si funciona no lo toques"
_________ STOP RUN.
_______ END PROGRAM MNM.

empieza en 8
#70 Joer... Me esperaba otra cosa... Algo en plan:

IF IT_WORKS = TRUE THEN DO NOTHING
#76 recuerda que pusiste una cadena literal: "Si funciona no lo toques."
#1 queremos foto pero ya mismo
#1. No lo hagas. Solo hay una cosa más terrible que tatuarse y es hacerse un tatuaje en un lugar visible.
#30 De acuerdo, me has convencido, no lo haré :-|
#31 Todo programador debería tatuarse en el culo una línia de código en cada lenguaje en el que haya trabajado más de un año. Sería fantástico para las entrevistas de trabajo.

- ¿En qué lenguajes tienes experiencia?
- Mira.
#1 por (ms) DOS, que se tatúe "conio.h" en las partes bajas :-D
#32 La virgen del conio.h mojado. Qué tiempos con Lattice e INT 21H. Good point
#32 En realidad "conio.h" es lenguaje C, para MS-DOS lo suyo es el HIMEM.SYS :troll:

CC #54
#63 Sí. De ahí la broma. En su día, empezó a usarse hace la host#@ de años en Lattice C para I/O. De ahí la coña que nosotros decíamos de hacer el include de la virgen del "conio mojao" y la interrupción 21H.
#66 #63 Con la del HIMEM (Hi memory o extendida), también hacíamos sus bromas relacionadas con lo de "petar" el himen.
No obstante, creo recordar que mientras lattice mapeaba a DOS, Borland C lo hacía directamente a BIOS.
#67 Asimismo, por aquel entonces no era complicado aprenderse las interrupciones y las tablas 8086/286 (además de protegido / no protegido). Hoy en día las CPU x86/x64 han evolucionado mucho como para memorizar.
#63 pues tienes razón, reformulo:

"por (ms) DOS, que se tatúe "conio.h" en el HIMEN (sys)"

Aunque igual eso alberga dudas sobre su sexualidad y tal (eso sí, os doy a escoger entre su naturaleza o su falta de ella como buen meneante :-D )
#63 Aún así es una librería para manejar la consola de MS-DOS, la de Linux por ejemplo es termios.h :-P
#1 Cámbialo por Identification Division y apoyo la causa


PD: Meneo igualmente; Hay Cobol, hay meneo :-D
#1 fotos o reporte
#1 CO en la nalga izquierda y BOL en la derecha porfa xD
#1 Necesitarás la espalda entera....
#1 Pequenyito no te va a quedar, precisamente:
000100 IDENTIFICATION DIVISION.
000200 PROGRAM-ID. HOLAMUNDO.
000300
000400*
000500 ENVIRONMENT DIVISION.
000600 CONFIGURATION SECTION.
000700 SOURCE-COMPUTER. RM-COBOL.
000800 OBJECT-COMPUTER. RM-COBOL.
000900
001000 DATA DIVISION.
001100 FILE SECTION.
001200
100000 PROCEDURE DIVISION.
100100
100200 MAIN-LOGIC SECTION.
100300 BEGIN.
100400 DISPLAY " " LINE 1 POSITION 1 ERASE EOS.
100500 DISPLAY "Hola mundo" LINE 15 POSITION 10.
100600 STOP RUN.
100700 MAIN-LOGIC-EXIT.
100800 EXIT.
#0 Queremos foto del tatuaje!
#15 Logro desbloqueado: sube a una noticia a portada siendo troll y karmawhore al mismo tiempo 8-D :-P
Puedes hacer una escultura del renacimiento con un zurullo, pero seguirá oliendo a mierda. COBOL es una vergüenza histórica. Hermosos algoritmos lloran cuando son implementados en COBOL.
Este "lenguaje de programación" ganó fama por su slogan "el lenguaje de los negocios", por lo que mucho ejecutivo de la época lo mencionaba para quedar bien como hoy sucede con mucho ejecutivo mezclando términos de blockchain, inteligencia artificial, cloud computing.
#44 Lo bonito de verdad es quicksort implementado en Haskell c:
#44 nada aguanta 60 años por un eslogan, es fácil, muy fácil, sencillo, robusto, rápido y en caso de error de lógica tienes toda la info del mundo en el volcado del error. No hace mucho pero lo que hace lo hace muy bien
Nunca he ganado más dinero que programando para aseguradoras (a veces bancos) en COBOL (algunos todavía estancados en RM/85 y Clipper - no COBOL pero basado en DBIV además de CICS/DB2). Peor es muy aburrido. Tiene su gracias, pero es aburrido.
Es el "Tornero fresador" de la computación.
#46 A mi el COBOL me ha mantenido muy bien durante muchos años. Ojalá cobrase ahora la cuarta parte de lo que cobraba por programar en COBOL.
Y no es que cobre poco, es que se ganaba un montón con él, como tú dices. Y aburrido, coincido al 100% con tu comentario.
#0 Preparate...
Solicito el voto "oxímoron" para el titular.
Que tiempos!
No podía evitar indentar el código para que todo quedara alineado. Lo sigo haciendo, pero no queda igual.
#9 mejor si evitas Python por ahora
#20 bueno, por lo poco que lo he usado, la identación es imprescindible, ¿no?
Eso sí, al principio es un poco liosos que esa sea la delimitación de los bloques.
#20 Esa es precisamente la parte de Python que no me gusta. Creo que ahí la cagaron. Para pillar los errores de "qué está dentro de qué" ya está el compilador, por ejemplo el G++ lo hace de puta madre.
#9 Pues mira... tomando en cuenta que incluso en los lenguajes que te permiten escribir todo el programa en una sola línea, no usar indentaciones es una locura, no veo motivo para no aprovechar la indentación para delimitar los bloques y así evitar la necesidad de las llaves u otros separadores (como el begin/end del pascal);
#29 BEGIN-END es una bendición. Otra cosa buena del PL1 es ésta. Mira que compararlo con el COBOL.
#50
IF condicion
Sentencias
ELSE
Sentencias
END-IF

vs

IF condición THEN
DO;
sentencias
END;
ELSE DO;
sentencias
END;

De verdad te parece más legible el PL1?
#81 Sí, claramente. Todo queda enmarcado en PL1. Hasta puedes meter un BEGIN-END en medio de donde sea y eso crea su propio scope de nombres ahí dentro. El COBOL no tiene ni siquiera control de scope de nombres.
Cobol es de todo menos bonito.
#37 La belleza está en la estructura del programa, no en la sintaxis, y para toda limitación hay truquitos y convenciones.
#52 yo esa belleza no la veo.

Chapuzas se pueden hacer con casi cualquier lenguaje.
#73 Sí, y con cualquier pedazo de piedra.
¡Un IDE!

Yo he programado una contabilidad y una nómina con un editor de líneas tipo edlin :-D
#24 Es inferior, pero cuando le coges práctica es casi igual de rápido.
Lo que hace falta para programar en COBOL es un mazo y un punzón.
#7 Mucho mejor el FORTRAN para perforar tarjetas, donde va a parar. COBOL es demasiado moderno.
Estoy por votar erronea, belleza y cobol en la misma frase es un claro y manifiesto error.
Belleza picassiana
En la facultad decíamos, hace ya 20 años, que las siglas de COBOL significaban Corre Obsoleto y Búscate Otro Lenguaje
#56 Estaba tan obsoleto hace 20 años, que se sigue utilizando...
#58 porque no hay huevos a meterle mano a esos sistemas. Abres un banco hoy y no usas Cobol para el core banking en la vida
#56 El hecho de que sea obsoleto no significa que sea malo.
Cualquier ordenador de hoy en día quisiera ser tan seguro y fiable como lo era el AGC que llevó al hombre a la Luna. Que sí, que ahora tenemos pantallas táctiles e interfaces gráficas, pero el AGC podría hacer su trabajo hoy tan bien como lo hizo en su momento.  media
¿Halloween no fue hace un mes?
me faltan los llorones que aprenden lenguajes de programación actuales (sin tener estudios además, intentando el intrusismo laboral), quejándose de que si está obsoleto y que debería actualizarse, para claro, ser ellos los que ganen pasta, ya que perdieron el tiempo en ello y se lo merecen mas que nadie en el mundo, sin haber pensado que es lo que realmente funciona y mueve dinero.
PD: falta hablar del JCL, REXX y CLIST
Larga vida al REXX
#65 y al AREXX, la variante del Amiga DOS.

SAY "LARGA VIDA AL (A)REXX? Y/N"
ANS.1 = "SIPI"
ANS.2 = "NOPE"
PULL answer
IF UPPER(answer) == "Y" THEN SAY ANS.1
ELSE SAY ANS.2
comentarios cerrados

menéame