Hello friends
In this post i will discuss the various programming languages that are used for programing mainframe
A computer language is the way that a human communicates with a computer. It is needed because a computer works only with its machine language (bits and bytes). This is slow and cumbersome for humans to use. Therefore, we write programs in a computer language, which then gets converted into machine language for the computer to process.
Mainframes started off with a single language but the number you can now find on big iron has exploded, and the division that used to exist between mainframe languages and those found on other platforms has almost vanished. So which languages are mainly used on a mainframe today, and why might you choose one over the other?
The various used languages are - -
Fortran is the granddaddy. Mainly used for scientific applications, it was developed by IBM in the 1950s, has been in continual use and development ever since, and remains a primary language for intensive supercomputing tasks. It is relatively easy to write an entirely portable program in Fortran, although outside of the scientific community it can be hard to find people with significant levels of Fortran programming experience. The latest version is Fortran 2008.
Released shortly after Fortran, COBOL is more oriented towards business programming; the name is a contraction of COmmon Business-Oriented Language. Its strength is in data processing and its readability. This makes it hard to hide malicious COBOL code, and errors easier to spot. COBOL runs on every mainframe platform as well many smaller systems, and research firm Gartner reported in 1997 that 80 percent of the world's business ran on COBOL, with over 200 billion lines of code in existence and that an estimated five billion lines of new code are being added annually. As a result, COBOL skills are widespread and still quite easily found. Updated in 2002 to include support for object-orientation, critics say the language is over-verbose, but supporters argue that this intentional design makes the code easy to both write and maintain. This is especially important as a great deal of extant COBOL code is now quite old, and the original developers are likely to have moved on. And the future seems assured, as COBOL vendors continue to add features, such as Microsoft .NET functionality which provides a means to integrate COBOL with Windows' .NET framework.
After the emergence of Fortran and COBOL, IBM developed PL/I (Programming Language One) in the 1960s with the aim of uniting the architectures and programming paradigms of business and scientific computing. Widely used in business data processing, PL/I supported and supports a range of ground-breaking endeavours, including the US Apollo space programme and Sabre, the airline reservation system. With the growth of PC, however, most of PL/I's advantages were overtaken by existing mainframe languages and by the emerging small systems languages such as C. IBM's competitors and customers saw little advantage in supporting or using either, and critics claimed that it was slow and complex to master. Although still in use, the mainstream has long since passed it by.
No discussion of mainframe programming languages would be complete without a mention of Java. Increasing numbers of applications are being developed in Java because of its portability. It runs inside a Java Virtual Machine, which provides its portability, and applications written in this object-oriented, open-source language can run compiled and so quickly. Skill sets are widespread. Although more of a CPU and memory hog than C++, to whose syntax it bears strong similarities, if you can program in C++, Java is easy. So popular has Java become on the mainframe that IBM's justification for the introduction of the System z Application Assist Processor (zAAP) was to run Java applications cheaper and more efficient.
C++ is also widespread and available on a multitude of platforms but unlike Java, exposes low-level facilities. This means of course that it is not as portable as applications are likely to be reliant on OS-specific API calls. With care though, source code can be written to be platform-independent. Perhaps the most compact distinction between C++ and Java is that C++ is powerful and designed for a wide range of programming tasks, while Java was designed to be simple and easy to learn with a powerful cross-platform library. Its flexibility means that programming can be procedural or object-oriented.
This is not and cannot be an exhaustive list of all available programming languages but I have included most languages in use by most developers today. Think I’ve missed your favourite mainframe programming language? Leave me a comment and let me know.
In this post i will discuss the various programming languages that are used for programing mainframe
A computer language is the way that a human communicates with a computer. It is needed because a computer works only with its machine language (bits and bytes). This is slow and cumbersome for humans to use. Therefore, we write programs in a computer language, which then gets converted into machine language for the computer to process.
Mainframes started off with a single language but the number you can now find on big iron has exploded, and the division that used to exist between mainframe languages and those found on other platforms has almost vanished. So which languages are mainly used on a mainframe today, and why might you choose one over the other?
The various used languages are - -
- Assembler
- COBOL
- PL/I
- C/C++
- Java
- CLIST
- REXX™
Fortran is the granddaddy. Mainly used for scientific applications, it was developed by IBM in the 1950s, has been in continual use and development ever since, and remains a primary language for intensive supercomputing tasks. It is relatively easy to write an entirely portable program in Fortran, although outside of the scientific community it can be hard to find people with significant levels of Fortran programming experience. The latest version is Fortran 2008.
Released shortly after Fortran, COBOL is more oriented towards business programming; the name is a contraction of COmmon Business-Oriented Language. Its strength is in data processing and its readability. This makes it hard to hide malicious COBOL code, and errors easier to spot. COBOL runs on every mainframe platform as well many smaller systems, and research firm Gartner reported in 1997 that 80 percent of the world's business ran on COBOL, with over 200 billion lines of code in existence and that an estimated five billion lines of new code are being added annually. As a result, COBOL skills are widespread and still quite easily found. Updated in 2002 to include support for object-orientation, critics say the language is over-verbose, but supporters argue that this intentional design makes the code easy to both write and maintain. This is especially important as a great deal of extant COBOL code is now quite old, and the original developers are likely to have moved on. And the future seems assured, as COBOL vendors continue to add features, such as Microsoft .NET functionality which provides a means to integrate COBOL with Windows' .NET framework.
After the emergence of Fortran and COBOL, IBM developed PL/I (Programming Language One) in the 1960s with the aim of uniting the architectures and programming paradigms of business and scientific computing. Widely used in business data processing, PL/I supported and supports a range of ground-breaking endeavours, including the US Apollo space programme and Sabre, the airline reservation system. With the growth of PC, however, most of PL/I's advantages were overtaken by existing mainframe languages and by the emerging small systems languages such as C. IBM's competitors and customers saw little advantage in supporting or using either, and critics claimed that it was slow and complex to master. Although still in use, the mainstream has long since passed it by.
No discussion of mainframe programming languages would be complete without a mention of Java. Increasing numbers of applications are being developed in Java because of its portability. It runs inside a Java Virtual Machine, which provides its portability, and applications written in this object-oriented, open-source language can run compiled and so quickly. Skill sets are widespread. Although more of a CPU and memory hog than C++, to whose syntax it bears strong similarities, if you can program in C++, Java is easy. So popular has Java become on the mainframe that IBM's justification for the introduction of the System z Application Assist Processor (zAAP) was to run Java applications cheaper and more efficient.
C++ is also widespread and available on a multitude of platforms but unlike Java, exposes low-level facilities. This means of course that it is not as portable as applications are likely to be reliant on OS-specific API calls. With care though, source code can be written to be platform-independent. Perhaps the most compact distinction between C++ and Java is that C++ is powerful and designed for a wide range of programming tasks, while Java was designed to be simple and easy to learn with a powerful cross-platform library. Its flexibility means that programming can be procedural or object-oriented.
This is not and cannot be an exhaustive list of all available programming languages but I have included most languages in use by most developers today. Think I’ve missed your favourite mainframe programming language? Leave me a comment and let me know.