4 ms·
"Great tools are what you get when your language sucks"
- phaylon 16y agoThis leaves out a couple of use-cases. Most of the "great tools" I use help with project development. And even if not, I'd rather argue it the other way around: Great languages allow for great tools to be built around them.
- tomjen3 16y agoOkay that I cannot agree with, unless you consider Java a great language.
- kscaldef 16y agoFalse conclusion. Here's what you did: 1) great languages have (or can have) great tools (per parent) 2) Java has great tools (you seem to be saying implicitly) 3) Therefore, Java is a great language See the problem?
- Retric 16y agoThat's suggests a vary week meaning of his orignial phrase. "Great languages allow for great tools to be built around them." Is ambigous your version suggests he ment, "Great languages" don't prevent good tools from being created. But, that's a fairly week reading. It's more natural to read it as, language design limits the quality of tools you can build, so only great languages can support truly great tools.
- phaylon 16y agoI rather meant to say that I think the ability of language users/developers to write powerful tools is a very important quality.
- jimfl 16y agoOther reasons your language might have great tools: there are lots of talented, motivated people using it, or there is a large company with lots of resources which has managed to find the right vision to put those resources behind (which, I know, is uncommon, but can happen). C# is a pretty good language with very good tool support. Not that there are no examples to supoort the author's overbroad generalization; Objective-C is an abomination, with awesome tool support. (for the record, I am growing to like Obj-C, but GOSH)
- mkramlich 16y agoI think Java, C# and Objective-C are the languages that most need or benefit from IDE's.
- lawn 16y agoI've tried Haskell for a while now and I think it's a great language but it also has some great tools with it, so I think that this is a gross generalization.
- shasta 16y agoWhat types of tools are obviated by a better language? - Code traversal? No - Refactoring? Mostly, no - Debugging? I know some disagree, but no - Profiling? No Some of these are less important in certain languages, but I think you still want all of them in any language.
- tomjen3 16y agoMaybe they can't be obviated, but almost all of them can be made so unimportant that it doesn't matter. For example, how often do you really need a debugger for Haskell?
- shasta 16y agoBeing able to inspect state is useful whenever you have state. Have you used a good debugger for Haskell? Does one exist? Do you write complicated software in Haskell? I'll agree that Fibonacci and factorial programs don't need a debugger. And speaking of Haskell, do you think tools like QuickCheck and Hoogle are signs of language deficiencies?
- Zak 16y agoI think this applies to a very specific subset of "great tools", to wit: the code-shoveling IDE. Others have already posted examples of useful tools that would be hard to eliminate through better languages. I'll add my own favorite: Slime, an Emacs environment for Lisp that talks to your running program to do things like autocompletion and displaying argument lists.
- Rob-Goodier 16y agoIs that a maxim for cultural evolution, also, or is this just for programmers?