Dear Phiroc, I am also a newbie to Haskell, but I also must confess having a sort of religious conversion. I also admit that the learning curve for Haskell, and in particular associated theory is steep, and I am only on the fist rung of the ladder. Some of what I say here has been echoed by others in answer to your query on the utility of Haskell.
I think most would agree that a language, be it natural or artificial, constrains or enhances they way you think, and perhaps even what you can think, and what you can create. Historically many technical problems remained intractable until the invention of the right language, the language of classical algebra, or the differential calculus I think are good common examples. Who would argue that Italian is a great language for operas? I find even at the elementary level, many common algorithms seem to me naturally obvious when expressed in Haskell. Other have also pointed out that the category theory constructs that allow Haskell to remain a purely functional language, allow you to bring in 'the heavy guns' of standard mathematical reasoning. With out discussing what proof is really all about, it very powerful if that concept can be imported into the art of programming. I also think that the relationship between parallel computing and functional languages will become very important in to following decades as we hit 'Moore's wall'. Now for my real truth, it is just down right great fun, hacking at its best. If asked for a one line description on what Haskell is I would say that it is 'Lisp on steroids'. Paul Graham has plenty to say about the utility and elegance of Lisp, I would like to know what he thinks of Haskell. I am going to paraphrase Graham: 'If a lot of really smart people are using something, and you can't see why, maybe its worth your time to see if you can see what they see'. Just to give you an idea of where I am coming from I started out putting food on the table in the 70's writing PDP 11 assembler programmes. Suppose you don't even use Haskell in a project directly, maybe you develop your programme 'conceptually' in Haskell, and write it in whatever makes practical sense in your environment and market. You may end up with an artfully designed set of code, that is easier to maintain, with clear abstraction barriers. In assaulting the learning curve I have found that I am building up a collection of texts, papers, blog postings, etc. If I don't understand one source, maybe another will give me some insight. I will just mention one of the many reference that I have found useful: 'Functional Programming - Practice and Theory' By Bruce J. MacLennan (ISBN 0-201-13744-5). Oh, and of course the classic, 'Structure and Interpretation of Computer Programs' by Ableson and Sussman. Neither is an 'Hakell' book, but I have found them hyper-useful for practical foundational material. I would be interested to know what materials you are using to learn Haskell, and am glad to see that I am not the only 'newbie' :-) Best Regards, Robert Emerson P.S. I didn't even mention Domain Specific Embedded Languages! Big time advantage. On Friday 27 April 2007 01:02, [EMAIL PROTECTED] wrote: > If this is interesting then please enlighten a poor, ignorant PERL hacker. > > Quoting Johannes Waldmann <[EMAIL PROTECTED]>: > > [EMAIL PROTECTED] wrote: > > > [...] semi-functional programming languages such as Perl [...] > > > > now this is an interesting view ... > > _______________________________________________ > Haskell mailing list > Haskell@haskell.org > http://www.haskell.org/mailman/listinfo/haskell _______________________________________________ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell