4 ms·
Programming languages can strive to be either tools or toys. Programming languages that strive to be tools focus on high quality standard libraries, speed, goo
by soup10 14y ago
Programming languages can strive to be either tools or toys.
Programming languages that strive to be tools focus on high quality standard libraries, speed, good debugging facilities, being easy to learn, ability to handle large projects, and hardware support among other things.
Toy languages strive to be innovative and explore new depths of computer science. Which is all well and good, but it's pretty annoying when people compare them with 'real' programming languages.
- Scriptor 14y agoThat's true, actual tools need all those criteria that you described. If you believe that functional languages don't meet those criteria, can you provide evidence for that? For example, from what I've gathered Clojure certainly has high quality libraries, an emphasis on speed when needed (performance is frequently superior to Python's), has debugging facilities, is easy to learn for someone with functional experience (just as Python or Java are relatively easy to learn for those with imperative experience) and can still be picked up with a little extra work otherwise, and has been used in production in large projects. I don't know about its hardware support so I won't comment on that.
- derleth 14y ago> high quality standard libraries, speed, good debugging facilities, being easy to learn, ability to handle large projects, and hardware support among other things. Hm. C has three, at most four of those desiderata. It lacks good debugging facilities, especially compared to what a real (Smalltalk or Lisp, for example) debugger can do, it is about as easy to learn as driving a car with manual transmission, manual steering, and inadequate brakes, and it is so lacking in support for programming in the large that people were willing to put up with 1990s-era C++. So is C a toy?
- dchichkov 14y agoRight. And also this 'real' debugger would not be predictable, would crash, wouldn't work with my favorite environment, would be a hell to install, etc... No, thank you very much, good old GDB is fine with me.
- derleth 14y agoNone of those things are or were problems with Smalltalk and Lisp environments. You might as well rattle off the potential downsides of using a compiler instead of writing machine code by hand.
- kaffiene 14y agoDisagree. C has good debuggers - visual c++ is fine. In my opinion, C has all the features that the parent post was referring to (you might quibble about being easy to learn, but I'd also quibble whether a tool needs to be easy to learn)