
On Sun, 2007-07-15 at 17:11 +0100, Andrew Coppin wrote:
Derek Elkins wrote:
On Sat, 2007-07-14 at 21:25 -0400, Steve Schafer wrote:
On Sun, 15 Jul 2007 00:21:50 +0100, you wrote:
[quoting a generic attitude]
"basically everything I write programs for is mainly about I/O..."
It's funny how people always seem to think that, but if you look at what they're really doing, I/O is usually the least of their worries. Programming GUIs is about the only reasonably common I/O-related task that has any sort of complexity. Most everything else is reading or writing streams of bytes; the hard part is what happens between the reading and the writing.
Or for a different slant look at xmonad. (www.xmonad.org)
I'm still really really fuzzy on why this exists...
What?
Anyway, I have pointed out that somebody once wrote a Quake clone in Haskell - and that's about as interactive, I/O-intensive and performance demanding as it gets. It's basically doing all the stuff that Haskell supposedly sucks at. And yet it works. (I'm told...) However, this argument convinces nobody. Saying "it can be done" is different from saying "it can be done easily". ("One person did it" seems to imply the former, whereas "loads of people have done it" would imply the latter...)
The reason I pointed it out is that it (a window manager) is something one usually thinks of as being "nothing but IO", yet this is not at all how xmonad is implemented. As for ease, it is shorter, more featureful, more robust, and was implemented much quicker that it's "inspiration" dwm. It also seems pretty popular for its age (not just in the Haskell community) as far as minimalistic window managers go.