Parce que le printemps est haïssable...

CO-BOL-Script... COBOLSCRIPT ?!?!???!

[via Bob Congdon]
Etant donné qu'il existe encore des milliards de lignes de code qui gèrent des milliards de données en COBOL dans le monde, des petits malins ont inventé COBOLScript.

Oui ! Un langage de script serveur, comparable à PHP, qui afficherait des pages web. Whaou ! le bonheur total, le paradis des programmeurs, le nirvanâ des... Mais qu'est-ce que je raconte ?

Je n'ai pas de mots pour exprimer à quel point ce produit me plonge dans l'épouvante la plus totale.
COBOL est le cauchemar des programmeurs. Rien que pour écrire "Hello World", 70 lignes sont nécessaires (exagérer n'est pas mentir).
Pure vraie et authentique contrainte, chaque ligne de COBOL doit commencer à la colonne 8, les sept premières étant réservées aux numéros de ligne. Un programme contenant un début de ligne avant cette colonne ne compile pas.
Et ne compte pas sur les messages d'erreur pour t'aider, autant les ignorer, c'est même plus sûr pour retrouver son bug.
Prout !

On nous avait déjà beurré la raie avec un COBOL Orienté Objet, dans le milieu des années 90, quand le OO était à la mode.
Je n'ai jamais entendu parler de la moindre application en COBOL OO de toute ma vie. Je ne sais même pas si le compilateur existe, en fait. Je pourrais googler, mais j'ai pas envie de devenir aveugle en regardant le résultat.

Là, bien sûr, le virage "web" de l'informatique a accouché d'un nouveau mutant nauséabond : un langage de script serveur fondé sur la syntaxe COBOL.
Les spécifications du produit sont effarantes.
Bien sûr, pour commencer, COBOLScript n'est pas libre. La licence la plus simple coûte $29.95.
De plus, il ne s'articule pas sur un serveur web existant (Apache, IIS, par exemple), mais le package contient son propre serveur web et son propre serveur de base de données (ben voyons, on voit mal COBOL attaquer des bases de données relationnelles du type MySQL ou Postgresql). On est donc contraint d'utiliser leur serveur Web qui, j'imagine est d'une immense sécurité / stabilité et à l'épreuve des balles. On va les croire sur parole, promis.

De plus, le serveur de bases de données ne tolère l'utilisation de SQL qu'au cas où tu achètes la version "pro". C'est vrai, les non-geeks vont savoir très facilement gérer leurs données dans des fichiers séquentiels indexés, comme nos grands-parents ont pu le faire pendant des années. Au fait, la version pro coûte $49.95.

Bien entendu, le code COBOL garde sa spécificité, à savoir une verbosité incroyablement superflue, et des fonctionnalités n'ayant plus cours depuis des lustres (GOTO, GOSUB...)
000090 DISPLAYLF depreciation_header_html.<br />000091 <br />000092 MOVE cost TO remaining_asset_value.<br />000093 MOVE 0 TO amount_depreciated.<br />000094 MOVE `DDB` TO depreciation_method.<br />000095 PERFORM CALC-DEPRECIATION VARYING period FROM 1 BY 1 UNTIL period > life.

Je trouve ça cataclysmiquement abyssal. Qu'est-ce qu'ils cherchent à prouver ? Qu'on peut faire du web avec une syntaxe héritée des cartes perforées ?
Bien sûr, j'encourage vivement quiconque se trouvant face à du COBOLScript à utiliser les mêmes blagues qu'on aura pu employer pour son grand frère, voire à en inventer des nouvelles :
- J'espère au moins qu'il pourra passer l'an 2000,
- La doc est assez ancienne pour être datée au Carbone 14,
- Tu pourrais me sortir le papyrus de ton dernier programme ?
- Combien pèse ce programme ? - Trente Kilos. Sans la doc. - Mais non, je parlais pas du listing, mais de l'exécutable.
- COBOL : Compiles Only Because Of Luck (Ne compile qu'en cas de chance)
- A computer without COBOL and Fortran is like a piece of chocolate cake without ketchup and mustard. (Un ordinateur sans COBOL ou Fortran est comme un morceau de gâteau au chocolat sans ketchup ni moutarde).

Terminons par cette phrase définitive d'Edsger Dijkstra, l'un des plus grands informaticiens du XX° siècle :

The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offence.

Traduction possible :

Utiliser COBOL déteriore l'esprit ; son enseignement devrait, par conséquent, être considéré comme un acte criminel.

24 Aôut 2004 - 22:47, par lolo

T'es znob ou quoi?

25 Aôut 2004 - 00:07, par kNo'

nan, ça n'a rien à voir avec le snobisme. C'est juste que pour accomplir une tâche donnée, autant se servir des meilleurs outils.
"Utiliser un stradivarius pour enfoncer des clous ne devrait pas être considéré comme une technique de construction fiable"
-Randal Schwartz et Tom Phoenix

L'informatique, ça n'est pas une affaire de mode. Il y a un bizness, c'est sûr, certaines modes, également.
Il fallait les lire il y a un an quand tout le monde parlait de "social software", un échec cuisant.
Mais COBOL était déjà dépassé en 95 quand j'ai eu mon DUT, mais ça n'a pas empêché les profs de nous asséner des heures de cours pour disséquer la PROCEDURE DIVISION ou la WORKING STORAGE SECTION, avec des déclarations de variables à n'en plus finir.
Par contre, C (ou C++) est un langage à peine moins vieux mais largement plus souple, plus puissant, et qui ne détone pas, même plusieurs décennies après ses premières versions.
Je n'ai rien contre les vieux, je ne fais pas d'âgisme. Mais faire prendre le virage du web à COBOLosaure, c'est un peu comme essayer de faire voler à Mach 2 un biplan ; tout le monde sait que ça va rater.

25 Aôut 2004 - 07:12, par lolo

où est mon message? Je

25 Aôut 2004 - 07:14, par lolo

........."Je trouve ça cataclysmiquement abyssal."
C'est du Lucchini ou du France Cul?
Une chose est sûre: c'est pas du Bordeluche.

25 Aôut 2004 - 07:16, par lolo

il y a un blème avec ton horloge:c'est Cobol!

25 Aôut 2004 - 07:17, par

ah non c'est moi qui sait plus lire! Je lisais 12h38, 14h48, et 16h11.Ouarf!

25 Aôut 2004 - 15:01, par kNo'

j'espère bien qu'on n'est pas obligé de faire partie de France Culture ou de s'appeler Lucchini pour utiliser des mots de plus de trois syllabes.
Soit dit en passant, mon vocabulaire, je l'ai surtout pompé à Desproges.
... et lolo n'est pas obligée de flooder les commentaires, non plus... ;op

Hors-sujet :
Au fait, il serait peut-être temps que je vienne te moziller un coup, ça fait un bail qu'on avait dit "après le mans".

25 Aôut 2004 - 18:39, par lolo

c'est vrai, on dit lundi car avant très chargé.Sinon un mercredi, c'est pas urgent.Merci

13 Sept. 2004 - 10:50, par Guitus

Au lieu de cracher sur le cobol, dites vous que les systèmes bancaire focntionnent encore avec beaucoup de cobol, et que la syntaxe du fortran n'est pas moins lourde a utiliser....

13 Sept. 2004 - 19:17, par kNo'

Je crache sur COBOL parce que dans ma chienne de vie j'en ai fait et que j'en garde un souvenir douloureux. Et j'ai également été employé dans une banque, et j'en garde également un souvenir douloureux.

La roue en bois roulait bien sur les chariots des romains, que n'attends-tu pour l'installer sur ta voiture ?
Le progrès, ça existe. Si COBOL a eu son heure de gloire, elle est révolue. Pas question de manger du COBOL réchauffé sauce Web.

27 Mars 2005 - 12:51, par xd

y a-t-il des informaticiens (de très bon niveau) intéressés
par un autre type de compilateur (Cobol sur main-frame MVS pour l'instant) qui fonctionnerait comme un pgm auto-correcteur (en compilation et accessoirement au run-time)
Le sujet est infiniment vaste et ne peut interesser que des
professionnels motivés, à la fois théoriciens et praticiens.
Soyez gentils d'indiquer vos motivations.
S'il y a assez de monde nous pourrions monter un site concernant ces sujets pour y travailler dessus tous ensemble.
topclub@club-internet.fr

15 Juillet 2005 - 04:18, par yop au gruyere

si l'homme de crommagnon avait connus le COBOL, il aurait inventer le C++ ...

service web en coblol, et a un quand un SDK DirectX pour Cobol ?

5 Juin 2007 - 11:23, par Max

Le cobol est dépassé. Mais il a été d'une stabilité extraordinaire. J'ai eu des systèmes qui ont fonctionné durant des années sans aucune intervention. Je programme actuellement en Delphi mais je ne critique pas le cobol il m'a permis de payer toutes mes factures et de vivre confortablement.


Toutes les balises HTML seront supprimées.
Tu peux ajouter des liens comme suit :
J'ajoute [a http://exemple.com "un joli lien"]
Tu peux aussi mettre *en gras* ou {en italique}.