[Haskell-cafe] Non-technical Haskell question

Jason Bailey azrael at demonlords.net
Fri Dec 3 10:05:21 EST 2004


Jules Bean wrote:

>> The documentation is sparse and confusing,
>
>
> Agreed. The hierarchical library documentation is poor in many places.
>
As well as a lack of decent online tutorials, examples, etc.  If it 
wasn't for the book /Haskell: The Craft of Functional Programming/   I 
would be much farther back in my comprehension then I am now.

>>  the "standard" libraries seem incomplete
>
>
> Compared to perl or java? Yes, absolutely. Perl and Java both have 
> enormous libraries of software available, and both have taken years 
> and years to reach the current state. Compared to C/C++ (which are 
> both popular 'real world' languages, of course) I think haskell isn't 
> doing so badly.
>
I don't think you can really compare Haskell with the C's. C/C++, for 
the time being, is the basis of most low level api's. They don't really 
need a large standard library because their packages  are available 
everywhere and are easily installed and updated.  Other languages, such 
as Perl, Java, Python, need to supply their own extensive libraries just 
to compete.. To say in fact... look you can do whatever you want in our 
language just as you could in C/C++.

Haskell has been around for quite a while, longer then Java or Python, 
and almost as long as Perl. Yet it doesn't have half the inherent 
library functionality that these other languages have. I find it 
curious. I like Haskell and I think it has a lot of promise. I just 
don't see why this problem exists.

>>  and how complitaion and linking is handled feels antiquated.
>
>
> Can you be more specific here?
>
First off let me say that I come from a world of Java. With the 
occasional foray into scripting languages and I only do C when forced.  
So yes I am spoiled :)

When I compile a language I expect to do some simple command and have a 
single end result that is dynamically linked.

One of the first things I wrote to get a feel of Haskell was a small 
program that popped open a gtk window with a button and every time I 
clicked the button it incremented a counter.

 When I compile it I get three files, an actual runnable binary (at only 
5M in size), a .o file and a .hi file. I'm sure these additional files 
are usefull in someway and as soon as I come across the right piece of 
documentation everything should make sense. But as a person new to the 
language I'm just left wondering why.

Static linking: For a single specific program I can see where it 
wouldn't make a difference. But lets say I want to replace my entire 
desktop with Haskell based applications. The sheer amount of additional 
space that would be required is breathtaking and then if there is a bug 
discovered in one of the libraries would I then be forced to recompile 
everything?

There might be solutions/answers to my concerncs already in place. I am 
new to this and I realize I am going to miss things. But the fact that I 
am missing the answers to these is just an emphasis on the problem of 
documentation.

Jason
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org//pipermail/haskell-cafe/attachments/20041203/b399f274/attachment-0001.htm


More information about the Haskell-Cafe mailing list