COBOL?!

Submitted Sun Mar 2 18:25:03 2008 under tags "cobol, languages, programming, computers, technology"

I took the "Programming Language Independent Study" course three times at my school. Once for FORTRAN, once for COBOL, and once for PL/I. It's amazing to me that COBOL is not only still around but appears to be thriving!

The newest versions of COBOL provide:

The implication is that you could run COBOL on the JVM and take advantage of just-in-time compiling! COBOL as fast as C++! Who would have believed it? (For all I know COBOL could already be as fast as C++.)

It's interesting to me that there seems to be a kind of convergence going on. It used to be the case that a language was exciting to me just because of the language syntax, or the way it sort of "felt" in its constructs.

Nowadays, though, it seems that I could choose one of many languages (C++, PHP, Perl, Javascript, Python, COBOL) and have access to all the facilities I need in order to perform web application development.

It's as if the languages are becoming less and less significant compared to the feature set required to perform a task, especially on the web. I mean, once your code uses garbage collection or reference counts (neither of which requires explicit memory management and my more complicated C++ programs use reference counts), has to parse and emit an XML DOM, create HTML and Javascript to make its GUI, store extended data in SQL, and run in a virtual machine, how much more does the language syntax itself count?

Of course I'm exaggerating. I'm very comfortable in C++ and almost as fast in C++ as in Python for simple numerical tasks. The cost of learning a new language model and syntax is still high. And I'll bet neither COBOL, Javascript, nor PHP have decent OpenGL bindings.

But the point remains that the data language we use for describing operations is becoming a larger and larger part of the programs we write. I have to know XML if I'm going to create a GTK GUI using Glade and then tweak the output. I have to know SQL to store my data in a decent database. At what point do C++ and Python just become the glue I use to stick together the data I'm using to describe my processing operations together?

What happens when someone describes a decent computational language with XML?

(I'll probably still think it's too verbose.)


Visit Brad's Home Page

See Brad's Full Blog Entry List