A university computer center head working with his campus' library administration recently expressed frustration that the software available for library circulation control is written in BASIC, COBOL, FLIRT, FORTRAN, MUMPS, OPL, PASCAL and several other programming languages rather than in a single language. He expressed the view that there should be a universal programming language, or at least a single language for a particular application. That is a little bit like saying that all motor vehicles on the highways should be identical regardless of intended use. Nevertheless, the 350 languages in use in North America represent proliferation beyond reason. Were there to be fewer in use, there would be greater flexibility in communication among systems and in transporting software from one computer to another.
The choice of a programming language by a turnkey vendor or a developer of off-the-shelf software packages reflects a number of considerations, among them experience of the programming staff, scale of the application, planned frequency of revision, hardware, and the potential market. BASIC is good for short programs that won't be used again and again and won't have to be maintained over several years. It is a language that is easy to learn and use. It is less appropriate for a commercially vended product, because it is limited in its capabilities and because it is not an ANSI (American National Standards Institute) standard language. In fact, there are many versions of BASIC. It is more difficult to find programmers for non-standard languages and transporting software from one machine to another is difficult. PASCAL, a much more powerful language that is easy to maintain, is also not yet standardized, although a joint ANSI-IEEE (Institute of Electrical and Electronics Engineers) is attempting to codify it. An effective standard is still two years away.
FLIRT and OPL are proprietary languages of a single turnkey vendor (CLSI and Geac respectively). They are not only non-standard, but in very limited use so that special programmer training must be undertaken. Furthermore, the software is not transportable to other computer systems.
COBOL, FORTRAN, and MUMPS are all ANSI standard languages. They permit one to meet the many requirements of a complex system and are relatively transportable from One computer to another. All are widely used so that programmers need not be specially trained to use them. COBOL, FORTRAN, and MUMPS will all be replaced in due course, but until they are, there is good reason to evaluate turnkey systems and software packages in part on the basis of their utilization of an ANSI standard programming language.