Lia S wrote:
CamelSpotter wrote:Not that PHP is a good language, really. As a programming language, it is very badly designed. But it became widely used for a reason, ...
The same can be said about C++, Java and Perl. It seems well designed languages always keep stuck in small niches, probably because "good enough" always gets finished before "perfect".
But there are degrees. I'm not a fan of C++, but I feel its problems are less egregious than PHP's. Java is not really badly designed, the first versions were designed to be "simple" and kinda idiot-proof, the newest versions include a lot of complexity under the hood (like existential types in wildcards for generics), but I wouldn't say Java is badly designed, only that it is boring to use
Perl is a whole other stuff, it started as a quick-n-dirty scripting language replacement, but then it grew and Larry Wall went all "postmodernist" and "I'm a trained linguist" trying to justify the language. It's quirky and, yes, badly designed in several places, but it's still a little more consistent than PHP (only a little).
Lia S wrote:OCaml? Yup, they definitely know what they're doing.
It's a very good language for writing language tools. Microsoft also has iternal tools written in OCaml to analyse the C code of drivers. It turns out that they discovered (during the time of Windows XP, I think) that around 80% of crashes and BSODs in Windows were due to badly-written driver code, nothing to do with Windows itself. It now uses tools (mostly written in functional languages like OCaml) to verify drivers, and the number of crashes and BSODs has fallen considerably since then.