I don't program in Haskell, but I find the language to be incredibly alluring and appealing because it seems almost like a way to access the Comp. Sci. gnosis. It's so different, and so incredibly elegant and amazing in what it does and how it does it, that it feels as tho it reveals some arcane, secret knowledge that, once appreciated, will change how you view every aspect of reality itself.
Why do some people like difficult programming languages such as C++ and Haskell? Here's my theory...
21–30 of 31 posts
Re: Why do some people like difficult programming languages such as C++ and Haskell? Here's my theory...
#22I think Haskell's appeal lies in being everybody's favorite local maximum, while remaining only a very select few's global one.
Re: Why do some people like difficult programming languages such as C++ and Haskell? Here's my theory...
#23Better question: why do people continue to waste time starting language advocacy wars, when they could be learning new languages?
Why is it so important to learn new languages all the time? Wouldn't you rather just get your startup going as quickly as possible? The implementation is not inherently interesting. It's just a means to an end.
If no one on your team finds implementation details inherently interesting, your implementation is likely to suffer, perhaps to the point of being uncompetitive.
Re: Why do some people like difficult programming languages such as C++ and Haskell? Here's my theory...
#24People enjoy programming in C++? Many people enjoy learning difficult things for the challenge of it, but no sane person enjoys using tools that remain difficult once understood. There are concepts in Haskell (and Lisp, ML, Smalltalk, etc...) that are considered difficult or confusing by the mainstream. They're also powerful , making it rewarding to learn them. Languages like C++ and Java are difficult simply because…
Your 'programming body memory' memorizes the language, and the mines, no biggie - you just program a certain way. What /sucks/ about C++ is the amount of boilerplate you have to write - in, probably, most interactions with the STL, and in class definitions, there's a thought-interfering degree of mandatory (or 'good style mandatory') boilerplate. At least 'for' loops will get cleaner with C++-0x.
Re: Why do some people like difficult programming languages such as C++ and Haskell? Here's my theory...
#25Earlier quoted context omitted.
C is not C++. You sound like a C programmer more than a C++ programmer.
Nah, I use C++ features pretty heavily. I'll even admit that I use Boost. I use STL when possible, because it's usually more efficient than hand coding and saves some time on implementing common algorithms. C++ gives you the ability to put together really powerful frameworks to work with, but deep within the code you're still working with the same fundamentals.
Re: Why do some people like difficult programming languages such as C++ and Haskell? Here's my theory...
#26Really good C++ programmers are often unwilling to give up the control and power (in practical terms) of the language + libraries. Any piece of code written in a higher level language can always be 'improved' upon / optimized in C/C++, while still remaining reasonably generic. This over time pretty much guarantees that 'timeless' code, like math and graphics libraries, ip stacks etc. will have their canonical represe…
Re: Why do some people like difficult programming languages such as C++ and Haskell? Here's my theory...
#27I don't program in Haskell, but I find the language to be incredibly alluring and appealing because it seems almost like a way to access the Comp. Sci. gnosis. It's so different, and so incredibly elegant and amazing in what it does and how it does it, that it feels as tho it reveals some arcane, secret knowledge that, once appreciated, will change how you view every aspect of reality itself.
Re: Why do some people like difficult programming languages such as C++ and Haskell? Here's my theory...
#28I don't program in Haskell, but I find the language to be incredibly alluring and appealing because it seems almost like a way to access the Comp. Sci. gnosis. It's so different, and so incredibly elegant and amazing in what it does and how it does it, that it feels as tho it reveals some arcane, secret knowledge that, once appreciated, will change how you view every aspect of reality itself.
It's not so fun the moment you want to use more than one Monad at once, though.
Re: Why do some people like difficult programming languages such as C++ and Haskell? Here's my theory...
#29And why do they believe the difficulty is intrinsic to the language and not a result of their own preconceptions and assumptions?
Re: Why do some people like difficult programming languages such as C++ and Haskell? Here's my theory...
#30People enjoy programming in C++? Many people enjoy learning difficult things for the challenge of it, but no sane person enjoys using tools that remain difficult once understood. There are concepts in Haskell (and Lisp, ML, Smalltalk, etc...) that are considered difficult or confusing by the mainstream. They're also powerful , making it rewarding to learn them. Languages like C++ and Java are difficult simply because…
Some C++ wizards took Greenspun's 10th rule as a challenge and developed template metaprogramming libraries like Loki and Boost :P Its kind of interesting to observe how C++ typelists do compile-time metaprogramming, they use a cons linked-list of types in templates. Its kind of sad to watch though because there's no REPL to set the cons free.