3 ms·
No, I don't "don't like Haskell" for any reason, I just see many people talking about how cool and productive it is, so I want them to stop talking and show it
by krick 13y ago
No, I don't "don't like Haskell" for any reason, I just see many people talking about how cool and productive it is, so I want them to stop talking and show it in practice. Because, as I said, there aren't many (should I say "any"?) successful apps written in it, so it's a little hard for unenlightened people like me to grasp how good it is.
Yes, I know that writing a browser or anything serious is a lot of work. But it's productive, right? And quite many people do that in their free time… well, maybe not a browser (at least I haven't heard about that), but at least bittorrent clients, p2p network layers, feature-full messaging clients, firewalls, anything. Their authors started them alone in their spare time, for free. And they are written in C, C++, Python, sometimes Java. Why? Obviously, because their authors for some reason chose that language. They decided it's better. And nothing is written in Haskell. It was like that 5 years ago, Haskell evolved, became much more popular (actually I even do know a company that uses it in production, but it's not the point) and that statement is still true. So every time somebody starts bragging about how all-powerfull Haskell is and how stupid are people that actually write something to choose C++ instead, I can help but ask: so why won't you prove on practice that Haskell is better? Because, once again, for PL "to be better" is to make its user more productive and more able to write quality software. So, it seems to me that this "why won't you…" argument (which is pretty ugly in many cases) is fair enough in this case.
Now, I don't want to rewrite what I said about languages you mentioned, because it was pretty long. So, in short. ML — dead. Python — way too slow (if "browser" is everything including engine, not some shell around webkit). Erlang — just isn't built for that purpose (it's dynamic, highly concurrent "built to fail" language — are you even serious?!). Java — well, maybe, but it's not the perfection itself.
- lhgaghl 13y ago> No, I don't "don't like Haskell" for any reason, I just see many people talking about how cool and productive it is, so I want them to stop talking and show it in practice. Because, as I said, there aren't many (should I say "any"?) successful apps written in it, so it's a little hard for unenlightened people like me to grasp how good it is. I can't even be bothered to look at what who is using what language for, so I'm not going to debate this... I use Haskell every day, as well as a bunch of other languages, some of which nobody heard of, and they all work fine. > so why won't you prove on practice that Haskell is better? Because I don't care? > Because, once again, for PL "to be better" is to make its user more productive and more able to write quality software. Which you can easily do in Standard ML with no surprises, because it's a straightforward simplistic language and it's been like that since the 70's. But you dismiss it because it's not popular or something (despite being used by hundreds of thousands of people). > Python — way too slow Do you have any results to show this? I already pointed out, even if the language is too slow, you can just run C or assembly or whatever in a separate address space for each CPU intensive process. Your claim implies that the latency of passing the output of the worker in C/assembly back to Python (and passing new input from Python to the worker) would be too high. > Java — well, maybe, but it's not the perfection itself. So... you agree?