Mailing List Archive
tlug.jp Mailing List tlug archive tlug Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]Re: [tlug] Resources for learning Haskell
- Date: Sat, 30 Mar 2013 17:35:04 +0900
- From: Curt Sampson <cjs@example.com>
- Subject: Re: [tlug] Resources for learning Haskell
- References: <CAFv52OAK9TxVs75odyWtT2usEBgahEBKQRoj6VL8KF31Ev_kkA@mail.gmail.com>
- User-agent: Mutt/1.5.21 (2010-09-15)
On 2013-03-29 18:05 +0100 (Fri), Josh Glover wrote: > ...Scheme, Clojure, and Scala (which, as Curt noted, has many things > stolen from^W^W in common with Haskell)... Actually, a lot of that stuff in turn comes from Miranda[1], to which Haskell owes a huge debt (Miranda might even be thought of as "pre-Haskell"), and that in turn takes a fair number of ideas (most noteably, perhaps, the Hindley-Milner typing system) from ML[2], which in turn owes quite a lot to ISWIM. > ...a copy of "Real World Haskell"... I don't recommend that as a first, book, actually. It's not terribly well written, and has a lot of bugs. However, it's probably useful as a second or third book once you've got the hang of the language itself and you're trying to work on real-world projects. > 1. Other than the reading materials noted above, what is the bible on > the Haskell programming language? There's no particular bible for Haskell, though there are a lot of good books out there. As a first book, I highly recommend Graham Hutton's _Programming in Haskell_[1]; it's fairly concise and covers both the language and the nature of how one programs in it. In particular, I recommend you thoroughly master chapter 8, "Functional Parsers", though I won't tell you why here so as not to spoil the surprise you'll get at some point after doing so. After that you can go pretty much where you please. Paul Hudak's book _The Haskell School of Expression_[2] is a good way to learn to do some serious coding for graphics and animation, and teaches you about functional reactive programming as a bonus. And, of course, you'll probably want to read one or more monad tutorials before you (inevtably) write your own. (Really. Everybody does.) My favourite is "All About Monads"[3] which not only helps you understand them, but focuses heavily on the construction and use of many of the standard moands, which I found really helped build my intuition for them. Oh, one more thing: Haskell, at least the way I use it, tends to very heavy use of recursion over lists, very much like Lisp or Scheme. If you're not particularly comfortable with this style of programming, you may find it useful first to work through _The Little Schemer_[4] by Daniel Friedman. [1]: https://www.cs.nott.ac.uk/~gmh/book.html [2]: http://www.cs.yale.edu/homes/hudak/SOE/ [3]: http://www.haskell.org/haskellwiki/All_about_monads [4]: http://www.ccs.neu.edu/home/matthias/BTLS/ > 2. Any suggestions for some programming problems I can tackle to get > my head into Haskell? Project Euler (projecteuler.net) offers a large set of interesting problems with a very mathematical bent. If you're looking to something more in the line of "doing stuff," you could try to start writing in Haskell the day to day text processing things you might otherwise do in Bourne shell or Ruby or similar languages. (You can do the usual hashbang of the interpreter, "#!/usr/bin/runhaskell", at the top of a file to make it a "Haskell script.") This can sometimes be a bit tough at first, but there are a surprising number of cases where doing some text processing in Haskell is actually easier than doing it in Ruby. cjs -- Curt Sampson <cjs@example.com> +81 90 7737 2974 To iterate is human, to recurse divine. - L Peter Deutsch
- Follow-Ups:
- Re: [tlug] Resources for learning Haskell
- From: Josh Glover
- References:
- [tlug] Resources for learning Haskell
- From: Josh Glover
Home | Main Index | Thread Index
- Prev by Date: Re: [tlug] Generating Furigana in documents
- Next by Date: Re: [tlug] Generating Furigana in documents
- Previous by thread: Re: [tlug] Resources for learning Haskell
- Next by thread: Re: [tlug] Resources for learning Haskell
- Index(es):
Home Page Mailing List Linux and Japan TLUG Members Links