[Haskell] Newbie: what are the advantages of Haskell?

Taillefer, Troy (EXP) troy.taillefer at lmco.com
Thu Apr 26 14:43:58 EDT 2007


Phiroc,

Hi Welcome to the mailing list.

Problem with partially functional languages in my opinion is if you can
do things the way that your most use i.e. imperative programming you
will do it

Perl, Python, Lisp, Scheme and etc have features that support functional
programming but I would wager that you will find more imperative code
written in those languages then you would functional code. People tend
to do things in the way there most accustom too and most developers are
educated in and work in imperative languages so if you really want to do
FP then your better to stick to a language that doesn't support other
more familiar paradigms otherwise you will find yourself falling back on
more comfortable and familiar ways of doing things.

Side effects include I/O, mutable assignment (destructively writing to
memory), generating random numbers etc.
Haskell of course has to allow these things otherwise it could not
produce useful programs it just does a lot better job of isolating these
side effects from Code
that does not have these side effects which have many benefits first
most being the ability to compose/glue code together in all sorts of
neat ways and not having to worry about unintentional side effects.

Advantage of Haskell over most other languages would be the core
language itself and its ability to glue software components together in
a safe way. This
advantage doesn't come without some pain and learning curve though.

Haskell is also a great language to learn new ideas and ways of thinking
about building software this is my interest in this language at this
time.

Haskell is a good place to start if you are looking to write something
from scratch
Unfortunately this is not my case. 

Disadvantages of Haskell are unfortunately greater then its advantages
as beautiful a programming language as Haskell is it lacks Libraries ( A
great glue language without many components to glue together is a sad
irony) and Tooling 

Haskell is not a language to get stuff done quickly in. I will probably
use Monads in a real world project in VB.NET 9 before Haskell.

I am not a Perl fan but CPAN is very cool when I have had to do
something in Perl I could find what I need there and it was well
documented too. 

Haskell to me is the promise of a dream yet unrealized in which you
easily glue together components together and it just works maybe one day
these components will actually get written.

Troy


-----Original Message-----
From: haskell-bounces at haskell.org [mailto:haskell-bounces at haskell.org]
On Behalf Of phiroc at free.fr
Sent: Thursday, April 26, 2007 12:48 PM
To: haskell at haskell.org
Subject: [Haskell] Newbie: what are the advantages of Haskell?

Hello,

what are the advantages of haskell over semi-functional programming
languages such as Perl, Common Lisp, etc.?

What are the mysterious "side effects" which are avoided by using
Haskell, which everyone talks about? Null pointers?

Don't you ever get null pointers in Haskell, including when doing IO?

Aren't Haskell's advantages outweighed by its complexity (Monads, etc.)
and rigidity?

Last but not least, I would like to learn from those among you who are
former PERL developers, why you switched to Haskell.

Many thanks.

phiroc


_______________________________________________
Haskell mailing list
Haskell at haskell.org
http://www.haskell.org/mailman/listinfo/haskell


More information about the Haskell mailing list