PL/I is a very old language but seemingly haven't got much publicity and appreciation as Fortran for scientific computing. Why is that? A search on the web does show that there are many PL/I codes for scientific computing. There is among others a scientific computing library which was developed by IBM in PL/I.
But I haven't found any free compilers for Windows for PL/I. Is it due to this lack of free compilers that PL/I didn't attract the scientific community?
Thanks a lot...
It has been used by various academic, commercial and industrial users since it was introduced in the early 1960s, and in fact is still actively used today. An extended version of PL/I, EPL, was the programming language for the implementation of Multics.
PL/I (Programming Language One, pronounced /piː ɛl wʌn/ and sometimes written PL/1) is a procedural, imperative computer programming language developed and published by IBM.
Fortran is a language that is specialized for high-performance computing. Believe it or not, it's still alive and evolving. Fortran is still used in high-performance computing.
I worked with people at IBM who built the PL/I optimizing compilers and PL/I checkout compilers. I enjoyed using PL/I, but it was a classic example of a "second-system effect": very complicated and clunky, although powerful. Imagine a closed-source version of Perl and you won't be too far off. And the key there is closed source. Languages take years to take hold, and by the time PL/I was stable in the mid-1970s, computation was already shifting away from mainframes toward minicomputers. Then in the late 1980s the microcomputers took over. The PL/I compilers were not designed to be portable—they were started right after the IBM 360, which was going to be the last computer anyone ever needed—and there was no way IBM was going to catch up with much simpler, more easily ported languages on the new platforms. (Not that I can imagine IBM trying to come up with a port of PL/I to the PDP-11.)
In short,
I liked PL/I, but I don't miss it.
Why is that?
I think there is a couple of reasons.
Maybe because habit is second nature. When PL/I appeared FORTRAN had already existed for almost 10 years. When some new technology/language appears you can start to disparage existing code base by calling it legacy code. But there is no reason to start conversion immediately. Especially it was big problem in 70s due to the lack of automated converters and other tools.
The next reason might be that there is no silver bullet. PL/I was attempt to create such silver bullet - general purpose language. They tried their best, you know the rest. =) PL/I was monstrous language. Frow Wikipedia article:
Programmers were sharply divided into scientific programmers (who used Fortran) and business programmers (who used COBOL), with significant tension and even dislike between the groups. PL/I syntax borrowed from both COBOL and Fortran syntax. So instead of noticing features that would make their job easier, Fortran programmers of the time noticed COBOL syntax and had the opinion that it was a business language, while COBOL programmers noticed FORTRAN syntax and looked on it as a scientific language.
Also the "old folks" like FORTRAN evolve under danger of death and added features such as structured programming, object orientation, etc. That reduced PL/I's relative advantages.
P.S. Also take a look at that part of Wikipedia article already mentioned.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With