4 ms·
Pascal is of almost exactly the same vintage, within a year or two, has all the safety features you could want, and yet never really achieved widespread adoptio
by Turing_Machine 6y ago
Pascal is of almost exactly the same vintage, within a year or two, has all the safety features you could want, and yet never really achieved widespread adoption other than as a language for teaching freshman programming.
The Pascal dialects that did gain some popularity, such as Borland's Turbo Pascal, generally (I'm tempted to say "always") had non-standard ways to do "unsafe" things. Turbo Pascal, in particular, let you put raw asm right in the middle of your code.
"Safe" languages have been invented many times, but programmers always seem to gravitate to powerful, if "dangerous", languages like C and (now) JavaScript.
There's probably a lesson for language designers here.
- pjmlp 6y agoThey were standard in ISO Extended Pascal, the standard that mostly ignored because Modula-2, Turbo Pascal and Apple's Object Pascal. Cowboy programming tends to attract certain kinds of developers, but not all.
- Turing_Machine 6y agoI'm not sure that using dismissive pejoratives ("cowboy programmers") is going to shed any useful light on the issue, especially not when the "cowboy" code represents the overwhelming majority of the commercially successful code that has been written in the last 50 years.
- pjmlp 6y agoA network effect caused by UNIX having been made available as free beer OS. When I write C, I write because I am forced to do so due to network effects, and qualitiy is certaintly not something that is part of C's features. And yes, cowboy programming fits the hacker culture that sprung off UNIX, the PHP and JavaScript of the 70's. So apply the same quality considerations to C, that you would measure PHP and JavaScript. Hey, apparently there has been tons of quality software written in PHP and JavaScript as well.
- Turing_Machine 6y ago> Hey, apparently there has been tons of quality software written in PHP and JavaScript as well. "Quality software" is a nebulous term. Make it "valuable software", or "software that people will actually pay you money to write". Apple (market cap: about $2 trillion) is Objective-C (slowly transitioning to Swift). Facebook (market cap: about $800 billion) was all PHP for a long time. The "network effects" you mention do not exist with server-based software. You can run any language on the server you want, as long as it spits out well-formed HTML to the client. In fact, these languages are popular because they are terse and powerful. And yes, like all powerful tools, they can kill or maim you in a hurry if you don't use care.
- Gibbon1 6y ago> There's probably a lesson for language designers here. When I was learning the code back then the problem with safe languages was you couldn't get outside the sandbox. And for anything practical you needed to. There either weren't API's for things you wanted. Or the API's that existed were insufficient. I remember in the early 80's someone showing me some code for high end medical product. It was written in Pascal and C. With shim functions to dick with the stack so you could call C functions from Pascal. Couple of years later they rewrote everything in C++. Notable I think C# and Rust both have no seat belt modes.