> ...
> I've written code in Pascal, as well as Modula-2. Never liked
> it--seemed to be a bit awkward for the low-level stuff that I was doing.
On Thu, 9 May 2024, Paul Koning via cctalk wrote:
Not surprising, since that's not what it is all
about. Both, like their
predecessor ALGOL-60 as well as successors like Ada, are strongly typed
languages where doing unsafe stuff is made very hard. Contrast that
with C, which sets out to make it easy to do unsafe things and partly
for that reason has a feeble type system. So doing low level stuff like
device drivers is difficult, unless you create extensions to break out
of the type system. An example of how to do that is the Burroughs
extension of ALGOL called ESPOL, which is what they used to write the
OS. Actually, Burroughs did a number of extended versions for different
purposes; there's also DCALGOL (Data comm ALGOL) intended for writing
communications software. Why that's separate from ESPOL I don't really
know; I only ever got to do regular ALGOL programming on Burroughs
mainframes. One reason for that: those systems depend on the compilers
for their security; if ordinary users got access to ESPOL they could
write dangerous code, but in ALGOL they cannot.
One of the things that _I_ love about C is that it is easy to get it out
of the way when you want to do something lower level.
Rather than feeble type system, it could have had a requirement to
explicitly "cast" anything being used as a "wrong" type.
One of Alan Holub's books about C is titled
"Enough rope to shoot yourself in the foot"
Each language has its own specialty. And you need to find the one that
fits you best.
It used to be (and likely still is), that every computer science grad
student created a new language. A requirement (usually UNSPOKEN) was that
the compiler be able to compile itself. That the language compiler is
written (actually normally RE-written) in that language and compiled by
that compiler. That certainly seems to bias things towards languages that
are well suited for writing compilers! If you were to create a language
that was specializzed for something completely different, and poorly
suited for writing compilers, then it would not be respected.
--
Grumpy Ol' Fred cisin(a)xenosoft.com