
On 6/26/07, Udo Stenzel
That's another way of saying that the truly powerful features are missing from C#...
Hi Udo, Genuine question: please could you tell me what are the truly powerful features of Haskell? My own personal interest comes from a presentation by Tim Sweenie (Unreal 3 Engine), where he discusses some of the ways that Haskell may help solve the threading issues that currently are the Big Problem in computing right now. A friend of mine told me that they're also useful for mission-critical implementations where you want to mathematically prove that the program wont crash etc. Unfortunately it seems Haskell isnt totally perfect for mission-critical applications because (a) it is hard to predict memory usage (b) it's not real-time (eg garbage-collector might kick in just when it would be an appropriate time to fire those booster rockets.... ?) I'm basically a C# developer looking around for ways to solve threading. I'm interested in a few things: - solutions that might work in C# - solutions that could be integrated into C# later on - solutions that work in other languages Haskell looks like it could possibly "solve" threading at some point in the near future, or at least make a dent into threading issues. Given that Simon Peyton Jones is (a) heavily involved in the birth and development of Haskell (b) works at Microsoft Research, there's a decent chance that anything he gets working will be integrated into C# in the future. As far as C# integration goes, I'd guess some way of marking classes/methods "Pure", and having the compiler enforce this. Remember that the average programmer does not have a phd, or even a degree, so anything that requires formal mathematical training will *not* be adopted by a mainstream programming language, but most of the maths can probably be abstracted away. Anyway, getting back to my question, there's a whole slew of articles around saying that no-one uses Haskell because they're too stupid. That's certainly an argument, but it possibly lacks a certain objectivity ;-) So... what do you see as the "Killer Advantages" that make Haskell stand out from the pack?