
On 05/13/2010 07:34 AM, Heinrich Apfelmus wrote:
I've added the new structure for "Haskell Basics" as I envision it, neatly put into a table next to the old one.
It looks sound. Next step is considering how the "Elementary" / "Intermediate" modules would have to change to accommodate the reshuffle. (By the way, I like your preference of guards and where over if, case and let for the "Basics" - not only because they are the simpler, but also because they are more distant from the usual procedural syntax, thus helping a bit to push newbies towards a paradigm shift.)
I'm still a bit hazy on the cheat sheet chapter, because it needs to do several things simultaneously:
* introduce each category and mention which functions are important and which are not; pointing to more detailed discussion for lists and IO * present a quick overview list of the functions * give a slightly more detailed account of each function
The idea is that the reader is given some exercises and he'll have to hunt the right functions for these tasks.
I set up a mock-up cheat sheet at http://en.wikibooks.org/wiki/Haskell/Experimental_Modules/Cheat_sheet_protot... . I structured it thinking on one appendix (or several ones) linked from the main "Building a vocabulary" module, where the more verbose discussions would be. The infrastructure could be easily adapted to different schemes, of course. Writing good and precise one-line descriptions of functions can be tricky (for instance, in my examples I don't like the way I described the folds and scans), but at least it looks neat. Regards, Daniel Mlot