Wednesday 4 April 2007

Cobol - Who Needs It?

Simple answer, Nobody. You don't need C, Access, Basic or any of the other programming languages either. You don't even need a computer and you certainly don't need Windows. What you need are answers. Results. You need them now and you need them to be right.

So how do you meet your needs? Remember that:-
Version 1.0 of anything never works properly
Seeing is not the same as believing
Simple is better than complex

Consider the wheel. Tried and tested, absolutely basic, does what you expect. Our software must be developed along the same lines. Like the wheel, Cobol software exists. It is proven code. It works. Why start again with a version 1 product?

In the early days of spreadsheets, you could probably cobble up almost anything for your shareholders or bank manager and because it was printed by a computer your submissions were taken as the absolute truth. Why? Because there was a history of computers producing accurate results after months of testing and manual checking. Most of this software was written in Cobol. Of course, we know better now about spreadsheets and databases (don't we?).

New software generators, solutions and languages have come and gone. Cobol is still here. Cobol programmers can:-
Pick up, read and understand a program listing that is 30 years old
Scan those yellowed pages into their PC, recompile and use the logic
Produce working software that will pass the test of time

The latest Cobol compilers can process old logic and methods or new, procedural or object oriented code and produce small, efficient and effective executable modules that programmers can use time and again, knowing they are robust.

By structuring programs in levels, the base code can run without being concerned about hardware, operating system, input and output methods or any other environmental issues, so that when, possibly many years later, modifications must be made, the programmer can be confident that the code can be read and understood. So Cobol will live on.

3 comments:

Abhijit Mandavkar said...

You are right the latest Cobol compilers can process old logic and methods. If you could manage have a look on this COBOL site.

Unknown said...

COBOL will die because the standard is now
too large and includes many features intended for e.g., object oriented programming. The more the programmer must know to read and modify another's program
the worse things get. Suppose you needed to learn French, Russian and Hebrew to read abook written in English? That is the situation with COBOL 2002.

John Culleton

NeoPravda said...

Cobol needs a new approach to get rid of verbosity. For instance, FSC & MF compilers spend too much words to define a simple web service. Maybe the committee could make use of annotations, so a method could me marked as "@WebMethod" and the compiler handle all complexity needed to make this available as such.

Another cool feature would be to get rid of repository, by defining types as needed. MF compilers has shown this is possible.

Another possibility would be to use tags within the code to indicate generics. That would be really useful.

The point is that regarding syntax, Cobol has been out of pace with other languages while offering similar features...and not necessarily more readable, just more verbose (and hard to use since one would need to remember too much to define too little).