Re: Learning Haskell and FP

2000-12-28 Thread Fritz K Ruehr

[ Doug Ransom wrote about wanting a more advanced and design-oriented book
  on FP than "The Craft of Functional Programming" by Simon Thompson.
  In reply, Johan Jeuring recommended the Advanced Schools books (I concur). 
 ]

Let me add a few other recommendations, plus a vision of a book (not
yet written, as far as I know) which might fit Doug's needs; I'll
call it "The Design Patterns Haskell Companion" (see below).

The "actual book" recommendations (all documented on haskell.org):

 * Introduction to Functional Programming using Haskell (second edition)
   by Richard Bird (Prentice Hall, ISBN: 0-13-484346-0)
   
   This book is an introductory text, like CFP, but it ramps up a bit
   faster and addresses design issues from a more advanced perspective
   (IMHO). It's certainly an excellent text, and it builds to a nice
   medium-sized design example (the program calculator of Chapter 12).
   It also leans toward a different style of design and programming,
   influenced by BMF/Squiggol.

 * Algebra of Programming
   by Richard Bird and Oege de Moor (Prentice Hall, ISBN: 0-13-507245-X)
   
   You might think of this as an advanced sequel to IFPH above, 
   although it focuses more on the theory behind program calculation:
   categories and allegories figure prominently, and it leans even 
   further in the direction indicated above. But there is nevertheless 
   a lot of good material here which can serve as a foundation for 
   design work, esp. the final chapters (7-10) on algorithms topics.

 * Algorithms: A Functional Programming Approach
   by Fethi Rabhi and Guy Lapalme (Addison-Wesley, ISBN: 0-201-59604-0)
   
   This is a concise tour through the usual gamut of data structures 
   and algorithms topics typical of a "CS 2" course, but from a 
   functional perspective. It is addressed more to people who are 
   already familiar with programming and with the "standard" approach
   to DSA issues. It works very well as a reference but includes 
   enough discussion to reward a straight reading.

 * Purely Functional Data Structures
   by Chris Okasaki (Cambridge University Press, ISBN: 0-521-66350-4)
   
   This one is similar to AFPA above (in being a tour of DSA topics from
   a functional perspective), but is a bit more advanced: e.g., Ch. 3
   covers leftist heaps, binomial heaps and red-black trees. It also
   addresses issues of analysis in the context of lazy evaluation more
   thoroughly (Banker's method, etc.). The examples are written using
   SML, but an appendix (and a website) give Haskell versions.

Of course, none of these books really answers the needs of the mature
programmer/blossoming functional programmer who seeks advice on
broader design issues in the context of lazy FP, esp. Haskell.
This gap leads me to propose the fanciful book mentioned above:

 * The Design Patterns Haskell Companion
   by [someone(s) reading this list?]

The title may be pandering a bit, but if the Smalltalk people can do it,
why can't we? :) . In fact, the title is based on "The Design Patterns
Smalltalk Companion" by Alpert, Brown and Woolf, a book I came across
while reading up on design patterns. (It was recommended by a customer
review on Amazon as being better than the original "gang of four" book.)

The "Smalltalk Companion" serves an audience of mature programmers and
attempts to document a number of "standard" design patterns in the
specific context of Smalltalk. I'm not sure that the Haskell community
would be comfortable referring to its collective design folklore in
these terms, but I'm sure we would all welcome a good book written at
this level which systematically addressed the motivation, rationale,
trade-offs, etc. of the more advanced techniques of FP (i.e., monads, 
type and constructor classes, Xa-morphisms (for various X), 
higher-order and nested datatypes, etc.).

As Johan mentioned, the "Advanced School" books serve this purpose to an
extent, but they differ from my vision in two respects: first, they are
collections of chapters on particular topics, written by different
authors, and thus don't form a consistent, systematic review. Second,
they are not (all) written from the specific perspective of design, so
that for example they don't provide as much comparison and contrast
*between* techniques.

Of course, another motivation for such a book is that it might lend an
air of credibility and maturity to the language, thus helping to 
promote it in the larger world. Casting it in terms of "design patterns"
would certainly make sense for these purposes (and probably guarantees
a certain audience, too), although I am still ambivalent about the need
for Haskell to become a huge hit with mainstream audiences.

In any case, if anyone is interested to write such a book, I will buy
a copy :) . And if anyone wishes to collabrate on it, I am willing
to help out. (I am not qualified to write it alone, and I think it 
would turn out best as a group effort in any case.)

  --  Fritz Ruehr
  

Re: Learning Haskell and FP

2000-12-28 Thread Jan Skibinski



On Thu, 28 Dec 2000, Benjamin L. Russell wrote:

> On Thu, 28 Dec 2000 16:48:57 +0100
>  Frank Atanassow <[EMAIL PROTECTED]> wrote:
> > i r thomas wrote (on 28-12-00 12:50 +1000):
> > >> "Furuike ya!  Kawazu tobikomu mizu no oto."  --Matsuo Basho
> > >
> >   "(It's) An old pond! The sound of water steadily
> > dripping in..."
> 
>"[It's] An old pond!  The sound of water as the frog jumps in"

Keeping with the minimalistic spirit of Haskell:

pond
frog
plop!

-- by James Kirkup, an English poet
-- Supposedly from Hiroaki Sato collection of 80 English translations
-- of this haiku.
--  
3 down 77 to go..

Jan



___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Learning Haskell and FP

2000-12-28 Thread Benjamin L. Russell

On Thu, 28 Dec 2000 16:48:57 +0100
 Frank Atanassow <[EMAIL PROTECTED]> wrote:
> i r thomas wrote (on 28-12-00 12:50 +1000):
> > Unforunately, the " Gentle Introduction To Haskell"
> that haskell.org links to is not a very useful
> introduction.
> > I am getting  more out of  Rex Paige's Two Dozen Short
> Lessons in Haskell. ( I am studying Haskell and C# on my
> own in my spare time as break from my medical practice ).
> 
> What did you find unuseful about GITH? How could it be
> improved? What were
> your expectations for it? What was more useful about Rex
> Paige's notes?

I read part of _GITH,_ too; while it included information necessary for an 
introduction, the style seemed rather terse and dry, and rather difficult to follow at 
times, and read more like a manual with many technical details than a tutorial 
brimming with motivational material, especially when compared to _The Haskell School 
of Expression_ ("_HSE_" in the sequel).  In particular, it could have had some more 
interesting examples or some more commentary, both of which made _HSE_ so fascinating.

> >> "Furuike ya!  Kawazu tobikomu mizu no oto."  --Matsuo
> Basho
> >
> > Translation please !
> 
> Is it OK if I show off and steal some thunder? :)
> 
>   "(It's) An old pond! The sound of water steadily
> dripping in..."

Actually, if I may add, the translation I remember was the following:

   "[It's] An old pond!  The sound of water as the frog jumps in"

"Kawazu" means "frog," and "tobikomu" means "(to) jump in."

--Ben
--
Benjamin L. Russell
[EMAIL PROTECTED]
[EMAIL PROTECTED]
"Furuike ya!  Kawazu tobikomu mizu no oto."  --Matsuo Basho

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Are anonymous type classes the right model at all? (replying to Re: Are fundeps the right model at all?)

2000-12-28 Thread Julian Assange

George Russell <[EMAIL PROTECTED]> writes:

> I'm writing, but that shouldn't be too hard to tweak.  In particular I have
> followed SML in using "." to express qualification by something, even though
> Haskell already used "." for something else, because I can't be bothered right
> now to dig up a better symbol.

This is why all non S-exp like lanaguage are doomed to progressive
syntactic cancer as the useful parts of operator name space and syntax
space become progressively polluted and mutated by one fad after
another.

--
 Julian Assange|If you want to build a ship, don't drum up people
   |together to collect wood or assign them tasks
 [EMAIL PROTECTED]  |and work, but rather teach them to long for the endless
 [EMAIL PROTECTED]  |immensity of the sea. -- Antoine de Saint Exupery

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Haskell newsgroup

2000-12-28 Thread William Lee Irwin III

On Thu, Dec 28, 2000 at 06:53:08PM +1000, i r thomas wrote:
> How about starting a Haskell newsgroup ?
> The closest seems to be comp.lang.functional.

There is a Haskell IRC channel on EfNet. I've been fielding Haskell
questions there with Albert Lai and Ada Lim for several months. There
has also been Haskell-related activity on OpenProjects Network #lisp.

comp.lang.functional seems to be inclusive enough to obviate the need
for a dedicated newsgroup.


Cheers,
Bill
-- 
"And who knows, if you try it, maybe you find out that you like SM(L)? ;)"
-- Markus Mottl on comp.lang.functional

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



RE: Haskell newsgroup

2000-12-28 Thread Shlomi Fish

On Thu, 28 Dec 2000, Doug Ransom wrote:

> That would only work if the haskell mailing list was either delete or
> mirrored onto a newsgroup.  I would prefer a newsgroup myself for bandwidth
> reasons.
>

And I prefer a mailing-list. It's hard to access newsgroups from the
Technion, and Deja-news seems to be little help when it comes to posting
messages.

Regards,

Shlomi Fish


--
Shlomi Fish[EMAIL PROTECTED] 
Home Page: http://t2.technion.ac.il/~shlomif/
Home E-mail:   [EMAIL PROTECTED]

The prefix "God Said" has the extraordinary logical property of 
converting any statement that follows it into a true one.


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



RE: Learning Haskell and FP

2000-12-28 Thread Doug Ransom

Who are the audience for  the books on Advanced Functional Programming?
Academics with a theoretical CS background or someone with just a bit of
understanding of FP? Ideally, I would like a course suited for someone who
has completed a basic FP course.



> -Original Message-
> From: Johan Jeuring [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, December 28, 2000 6:06 AM
> To: Doug Ransom
> Cc: [EMAIL PROTECTED]
> Subject: Re: Learning Haskell and FP
> 
> 
> >Is there a good textbook on Functional Programming which 
> starts from a base
> >point similar to "The craft of Functional Programming" but 
> more advanced in
> >terms of introducing necessary topics like Category theory, 
> catamorphisms,
> >monads, etc?  I would find such a book very useful, especially if it
> >concentrated on lazy functional programming.
> 
> You might want to have a look at the series of three books on Advanced
> Functional 
> Programming, published in LNCS, as LNCS 925, 1129, and 1608. I would 
> probably start with 925, which introduces monads, parser & 
> pretty-printing 
> combinators, monadic catamorphisms, constructor classes, etc.
> 
> -- Johan Jeuring
> 

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



RE: Haskell newsgroup

2000-12-28 Thread Doug Ransom

That would only work if the haskell mailing list was either delete or
mirrored onto a newsgroup.  I would prefer a newsgroup myself for bandwidth
reasons.


> -Original Message-
> From: i r thomas [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, December 28, 2000 12:53 AM
> To: [EMAIL PROTECTED]
> Subject: Haskell newsgroup
> 
> 
> How about starting a Haskell newsgroup ?
> The closest seems to be comp.lang.functional.
> 
> 
> ___
> Haskell mailing list
> [EMAIL PROTECTED]
> http://www.haskell.org/mailman/listinfo/haskell
> 

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Learning Haskell and FP

2000-12-28 Thread Frank Atanassow

i r thomas wrote (on 28-12-00 12:50 +1000):
> Unforunately, the " Gentle Introduction To Haskell" that haskell.org links to is not 
>a very useful introduction.
> I am getting  more out of  Rex Paige's Two Dozen Short Lessons in Haskell. ( I am 
>studying Haskell and C# on my own in my spare time as break from my medical practice 
>). 

What did you find unuseful about GITH? How could it be improved? What were
your expectations for it? What was more useful about Rex Paige's notes?

>> "Furuike ya!  Kawazu tobikomu mizu no oto."  --Matsuo Basho
>
> Translation please !

Is it OK if I show off and steal some thunder? :)

  "(It's) An old pond! The sound of water steadily dripping in..."

-- 
Frank Atanassow, Information & Computing Sciences, Utrecht University
Padualaan 14, PO Box 80.089, 3508 TB Utrecht, Netherlands
Tel +31 (030) 253-3261 Fax +31 (030) 251-379

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Learning Haskell and FP

2000-12-28 Thread Johan Jeuring

>Is there a good textbook on Functional Programming which starts from a base
>point similar to "The craft of Functional Programming" but more advanced in
>terms of introducing necessary topics like Category theory, catamorphisms,
>monads, etc?  I would find such a book very useful, especially if it
>concentrated on lazy functional programming.

You might want to have a look at the series of three books on Advanced
Functional 
Programming, published in LNCS, as LNCS 925, 1129, and 1608. I would 
probably start with 925, which introduces monads, parser & pretty-printing 
combinators, monadic catamorphisms, constructor classes, etc.

-- Johan Jeuring


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Haskell newsgroup

2000-12-28 Thread i r thomas

How about starting a Haskell newsgroup ?
The closest seems to be comp.lang.functional.


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: Learning Haskell and FP

2000-12-28 Thread i r thomas

>While it may not be advanced or mathematical enough for your needs, you may wish to 
>read _The Haskell School of Expression: Learning Functional Programming through 
>Multimedia,_ by Paul Hudak.  This is also an introductory book on functional 
>programming, with a special focus on Haskell, although the examples used are mainly 
>from multimedia.

Is there an online version of Hudak's book ?
( For example Bruce Eckel has online versions of all his books available online as 
well as in print )

>"Furuike ya!  Kawazu tobikomu mizu no oto."  --Matsuo Basho

Translation please !
Basho is my favorite Japanese poet.
Unfortunately my Japanese is at the Ohio level..
(  ohiogozaimazu)




___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell