ANNOUNCE: Draft TOC of Haskell in a Nutshell
Johannes Waldmann
joe@isun.informatik.uni-leipzig.de
Tue, 9 Jan 2001 09:00:27 +0100 (MET)
> However, I would move IO further to the front.
> For any "real life" programming, IO is essential...
I am currently teaching a Functional Programming lecture (notes in German:
http://www.informatik.uni-leipzig.de/~joe/edu/ws00/praxis/skript/)
and I also used this approach: use the do-notation intuitively
(for text IO and graphics, using SOE book),
and explain monads later (with parser combinators and interpreters).
This could be driven to the extreme: not only hide the word "monad",
but also "functional". The title would be "Imperative programming in Haskell"
(as S. Peyton Jones says in Tackling the Awkward Squad:
"Haskell is the world's finest imperative programming language").
The students would start writing do-notated programs in the IO monad,
starting with putStrLn "Hello World";
and gradually the emphasis is shifted from sequencing (the "semicolon")
to "what can we do on the righthand side of let x = ... ",
thus introducing functional programming.
Not sure if this is really a good idea, though...
--
-- Johannes Waldmann ---- http://www.informatik.uni-leipzig.de/~joe/ --
-- joe@informatik.uni-leipzig.de -- phone/fax (+49) 341 9732 204/252 --