On Thu, 19 Aug 1999, S. Alexander Jacobson wrote:
> Mark,
>
> Out of curiosity, how big is the user community? How many downloads of
> the software? How many are on this list? If you figure that 1 user in
> 1000 is actually going to contribute a useful change each month (that is
> probably optimistic), the slow flow of changes isn't that surprising.
Good question; I am also curious about it. I presume that Haskell
has reached a point of maturity and popularity where such
answers could be made public in a sense of a positive propaganda.
>
> Also, why are there so many Haskell compilers for so few users?
> There is really only one PD C compiler, GCC, and only one PD Perl
> interpreter, perl (or vice versa on the capitalization).
> Haskell has Hugs, GHC, NHC, HBC, for the core language, plus
> there are derivatives like ....cayenne, clean, mercury, etc.
> The variety of implemetations probably fragments the user community
> excessively further inhibiting growth.
Because of egos involved, because of a friendly competition,
because of personal decisions to include some experimental
features here and there, because of the fact that Haskell
evolves and is used as a research platform. I do not see
anything wrong with that.
Few years back there were three Eiffel compilers (Tower
Eiffel, ISE Eiffell, and a German one (I do not remember
its name, sorry)). Now there is also a Little Eiffel (or
something of this name).
The user base was probably as small as the Haskell's one today,
and Eiffel was less research oriented that Haskell is. But they
all tried to implement the same specification of the language,
support the same libraries, and the implementors were (are?)
making their decisions together about future of Eiffel via NICE
(Non-profit International Consortium for Eiffel). Same pattern!
> The rewards for fixing stuff in haskell implementations are further
> reduced because compilers don't feel all that modular and because changes
> to the typesystem can obsolete large classes of fixes (especially to the
> error reporting system).
Painful, but better than carrying some luggage of old ideas
that have not been proven workable, or easy to use.
What counts is a generalization but yet a simplification of
the language itself. Personally, I like simple and clear
theories, which I can then use to built possibly clever and
complex (as hell :-(, :=)) applications.
>
> On Thu, 19 Aug 1999, Mark P Jones wrote:
>> Of course, it may just be the size
> > of our community, and the subject area: there's a much
> > greater demand for operating systems than there is for
> > lazy functional language implementations, and there are
> > probably a lot more people with expertise in the former
> > than there are in the latter.
Make Haskell simple, document it well in a fashion
understandable by a Joe programmer, and the tools will
start popping up. :-)
My point is that even a "Gentle introduction"
is not so gentle - as it is even admitted on www.haskell.org
pages. I started appreciated it long after my first
exposure to Haskell.
There are too many assumptions about the level of
a reader's comprehension of the texts presented.
Have you ever thought about the official definition
of Haskell in the introduction to Haskell Report,
or in its presentation in FAQ of comp.lang.functional?
It sounds like mumbo-jumbo, because all the terms
used there are foreign to Joe Programmer. That does
not mean that those terms are too damn difficult - they
are just simply not defined clearly up front.
Examples? What does it mean "first-class?" "Definition"
as opposed to "declaration?" "Denotational semantics?"
Where does a syntax ends and semantics takes over?
"Partial function" vs. "partial application"?
"Abstract data type" vs. "Algebraic data type"
vs. "Abstract syntax tree"? All are being abbreviated as AST!
What on earth is "lifting"?
I am not trying to be negative. As a matter of fact I am
currently working hard on getting those definitions in some,
hopefully logical, perspective - with some clear relashionship
amongst them. If I succeed I will publish it on line for a benefit
of the Joe Programmer.
>> And we shouldn't discount
> > or forget the valuable contributions that quite a lot
> > of people already make to Haskell in other ways, by
> > answering questions on this or related lists, by using
> > Haskell to build interesting applications, and so on.
> > What I'd like to do is to stimulate more in the way of
> > contributions to the implementations.
My old topic, unfortunatelly ignored: make a sort
of database of Frequently (interesting) Asked Questions with
clever answers. John Patterson has promissed to
do something about it, but it has not materialized
yet. :-(
> >
> > So perhaps we should be more explicit: I'm sure that all of
> > us involved in developing Haskell systems would welcome
> > contributions from the community that will help to make the
> > tools better. Better tools will benefit the whole community,
> > and will make them accessible and useful to a much wider
> > audience.
> >
> > This doesn't mean that people shouldn't post bug reports
> > or gripes about the systems --- the poster may not know
> > how to fix the problems, but perhaps their message will
> > inspire somebody else to tackle it. But I do think that
> > we need to move away from a "them and us"/"developer and user"
> > picture, and towards a more community oriented "us".
Exactly!
> >
> > All the best,
> > Mark
> >
>
>
Jan