--- On Fri, 5/9/08, Bulat Ziganshin <[EMAIL PROTECTED]> wrote:

> Hello Giorgio,
> 
> Friday, May 9, 2008, 10:40:47 AM, you wrote:
> 
> > be the next one. Should I wait for Real world Haskell
> or do you think
> > that the books you listed offer something
> new/different/more advanced
> > than Programming in Haskell?
> 
> i recommend you to read papers from the
> http://haskell.org/haskellwiki/Learning_Haskell
> page, in particular those in Advanced tutorials, Monads,
> Type classes,
> Popular libraries sections

That is one idea.  Also, since The Haskell School of Expression 
(http://www.haskell.org/soe/), by Paul Hudak, is sometimes regarded as easier 
to read as a second book on Haskell, you could read that, too.

A more interesting suggestion, depending on your interests, is to find a 
specific interesting paper and do follow-up reading to understand that paper's 
topic better.

For example, a few months ago, I was reading a paper, "A History of Haskell: 
Being Lazy With Class" 
(http://research.microsoft.com/~simonpj/papers/history-of-haskell/history.pdf), 
by Paul Hudak, John Hughes, Simon Peyton Jones, and Philip Wadler.  While 
reading this paper, I encountered multiple references to a "Hindley-Milner type 
system," which apparently formed the basis for Haskell's type system, and 
wanted to learn more about this.  A reference in the bibliography of the above 
paper pointed to "A theory of type polymorphism in programming," by Robert 
Milner, which unfortunately I was unable to find online.

Further investigation led to a doctoral dissertation, "A General Framework for 
Hindley-Milner Type Systems with Constraints" 
(http://citeseer.ist.psu.edu/sulzmann00general.html), by  Martin Sulzmann.  
Being new to type theory, I had some difficulty in understanding this paper, so 
I sent a question by e-mail to the author.  He wrote back a rather terse reply 
suggesting that I go read the book "Types and Programming Languages" 
(http://www.cis.upenn.edu/~bcpierce/tapl/) by Benjamin Pierce, adding that then 
I might better be able to understand his paper.

Fortunately, the Wikipedia entry for "Type inference" pointed to Chapter 22 of 
that huge book.  This dramatically reduced the amount of relevant reading.  
However, the book is very heavy, and was unavailable at the library when I 
wanted to borrow it.  I plan to purchase that book in the near future.

Some other suggestions for relevant papers not mentioned in "Learning Haskell - 
HaskellWiki" that I have found interesting are the following:

* A critique of Abelson and Sussman or why calculating is better than scheming, 
by Philip Wadler
  http://www.cs.kent.ac.uk/people/staff/dat/miranda/wadler87.pdf
  This paper describes advantages of KRC, a predecessor to Miranda, itself a 
predecessor to Haskell, over LISP.

* Wearing the hair shirt: a retrospective on Haskell (Microsoft PowerPoint 
presentation), by Simon Peyton Jones
  This paper describes the evolution of Haskell, and describes some advantages 
of Haskell over other programming languages.
  
http://research.microsoft.com/~simonpj/papers/haskell-retrospective/HaskellRetrospective-2.pdf

* Archived e-mail message by Roger Hindley explaining the history of type 
inference (c/o 
http://en.wikipedia.org/wiki/Type_inference#Hindley.E2.80.93Milner_type_inference_algorithm)
  http://www.cis.upenn.edu/~bcpierce/types/archives/1988/msg00042.html
  This short (one-page) e-mail message describes the history of the 
Hindley-Milner typing algorithm.

Also, you may wish to attend an academic conference related to Haskell.  For 
example, recently, I attended "Continuation Fest 2008" 
(http://logic.cs.tsukuba.ac.jp/~kam/Continuation2008/) on continuations.  
There, I met an Assistant Professor from Rutgers, The State University of New 
Jersey.  During the conference dinner afterwards, I was able to ask him to help 
me figure out how to write Towers of Hanoi in Haskell.  In addition, I met some 
local researchers who gave me information on attending a monthly Haskell study 
meeting.

Benjamin L. Russell
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to