Write yourself a Scheme in 48 hours: A Haskell Tutorial
jonathan.tang.name
jonathan.tang.name
From a comment there: http://en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_H... is the maintained version.
Still, it's neat to see folks still find this interesting & informative. I learned a lot from writing it, and I hope others learn a lot from reading & working through it.
So much of what I had been seeing was all heavy math and abstractions, and while that's interesting it never gave me a foothold for actually using it.
Seeing something much more tangible made a big difference.
I'll try this out this week. Thanks for sharing!
What I'm wondering about is how you arrived at the 48 Hour number?
I wasn't crazy about LYAH or RWH. They're both spreading too little butter over too much dry toast.
Haskell the Hard Way is small, dense, efficient, and enjoyable.
I think one of the more popular, but fundamental, mistakes in teaching Haskell is in thinking that the more important "revelations" are easier to convey if you hide them in a sea of noise and that doing so is the only alternative to impenetrable white papers.
More importantly, the Little Schemer and The Little MLer are aimed at non-programmers... yet programmers struggle with them. We should question why that is.
I liked Learn You A Haskell a lot.
I don't think this is a bad thing. In any mathematics class I ever excelled in I spent a lot of time mindlessly executing the mechanics and knowing the names and pieces that were relevant, once I knew all that it became very easy to see the interpretations and the applications.
I think I'll finish LYAH before doing one of these more application oriented tutorials.
Either way - I hope to give Write Yourself a Scheme... a go sometime soon. Looks good.
48 hours is actually somewhat ambitious - it took me about 3 months of nights & weekends time to write it (although that also included teaching myself enough Haskell to write the implementation all the way through first before writing it up as a tutorial). It's probably technically possible to go through it in a weekend and write yourself a Scheme, but to really learn things in depth may take a bit longer.
[1] http://s48.org/
Nonetheless, thank you very much; it's new to me. Scheme is wonderful, and I'm enjoying learning Haskell. This will be a fun exercise.
putStrLn( read (args!!0)::Int + read(args!!1)::Int )
Definately need to do learnyouahaskell before reading this tutorial which is what I'm about to do. The link to how read is implemented doens't make any sense to me (coming from a procedural language background).
I suggest adding answers to the exercises or asking questions that are self contained in the tutorial.