Our biggest mistake was using the scary term “monad” rather than “warm fuzzy thing”.
I remember being impressed with Ada because you could write an infinite loop without a faked up condition. The idea being that in Ada the typical infinite loop would be normally be terminated by detonation.
Ada language is a voice from thermonuclear hell, a curse to the humankind.
Objects are state data with attached behavior; closures are behaviors with attached state data and without the overhead of classes.
Given enough bugs, all eyes are shallow.
A programming language is low level when its programs require attention to the irrelevant.
Under no circumstances confuse the mesh with the interleave operator, except under confusing circumstances.
Formal logical proofs, and therefore programs — formal logical proofs that particular computations are possible, expressed in a formal system called a programming language — are utterly meaningless. To write a computer program you have to come to terms with this, to accept that whatever you might want the program to mean, the machine will blindly follow its meaningless rules and come to some meaningless conclusion.
Programming languages should be designed not by piling feature on top of feature, but by removing the weaknesses and restrictions that make additional features appear necessary.
1 This can give a wrong impression that you can't escape a loop in Ada. You can, either with “exit [when <condition>]” statement or by raising an exception. Otherwise it's true, “loop ... end loop;” creates an infinite loop, finite loops are created by adding a condition before the “loop” keyword.
2 This is from an article in a soviet newspaper that described the USA as an antiutopia. The author compared it to Orwell's Newspeak as if it was a constructed language, which suggests that he had little idea what a programming language is. Neither he knew that Ada was used in the USSR too.