|History of Computer Languages - The Classical Decade, 1950s
|Written by Harry Fairhead
Page 3 of 3
Once Fortran had shown how to construct compilers the flood gates were open. It was possible to design and implement any language that a bored programmer could dream up. I suppose we should be grateful that more languages didn't catch on but the idea of application-specific languages did.
Fortran 1 was essentially a scientific language, suitable for number crunching - it had floating point numbers and complex numbers. The first version had no way of handling text and later versions only solved the problem by converting characters to numeric values - Hollerith characters!
This made Fortran distinctly unsuitable for business use, as a result Cobol - COmmon Business Oriented Language was created. Most of the early work was done by Grace Hopper. At this stage in the development it looked as though a new language would be created to suit every need. Cobol made use of very long natural language like instructions. It made an effort to be as different from Fortran as possible and so being able to write complex arithmetic as in Formula Translation wasn't a feature. That is Cobol didn't use a stack algorithm of translate an arithmetic forumla to code you had to write it out in very simple form. Even assignment was avoided by commands such as
and so on.
Cobol was designed for business and business programmers clearly didn't understand arithmetic let alone algebra. It may have lacked the ability to do complex arithmetic but it did have the ability to handle text and work with records - something Fortran lacked.
The next major language, Algol (ALGOrithmic Language), was the invention of the computer scientists to allow a consistent and compact way of representing programs for publication and as a research language. Surprisingly this marked the end of the boom. Algol 58 was something of a break though and a tour de force of computer science. It introduced many of the ideas we take for granted today - such as the distinction between assignment := and equality =, the use of the three part for loop for index:=start increment limit and nested procedures with local scope definitions. Algol was the first of the block structured stack based languages that evolved into C, C++, C#, Java and so on.
Another big difference is that Algol used a stack for its memory model. Fortran and Cobol used a heap and allocated variables at the start of the program. Algol introduced the idea of automatic local variables that were stored on the call stack. Once this idea became established it more or less took over the world. Just about every language today makes use of a stack frame to store local variables and a heap to store globals. The trinity of Fortran - for the scientists and engineers, Cobol - for business and Algol - for the computer people, proved to be sufficient and even today many new languages can be classified as Fortran-, Cobol- or Algol-like. Although it has to be admitted that the Algol like group is by far the most common today.
Although both Cobol and Algol started their development in the late 50's their impact and history stretches into the 60's. They are really the seeds for the next ten years of language development. The story of Algol and Cobol is featured in the next article dealing with the 60s. Fortran was the trail blazer that others followed.
Its production was and still is the major event in the history of programming languages and it is only fitting that the 50s should be thought of as the Fortran decade.
or email your comment to: email@example.com
|Last Updated ( Sunday, 11 June 2023 )