BAL paper available

Dylan Thurston dpt@math.harvard.edu
Tue, 15 May 2001 21:14:02 +0300


On Tue, May 15, 2001 at 06:33:41PM +0200, Jerzy Karczmarczuk wrote:
> Serge Mechveliani :
> > ...
> > My real intention in whole this line of business was always not just
> > to propose a standard but rather to discuss and to find, what may be
> > an appropriate way to program mathematics in Haskell.
> > The matter was always in parametric domains ...
> > Whoever tried to program real CA in Haskell, would agree that such a
> > problem exists.

Can you be more precise what the problem is?  One problem I see is
that referred to in Section 3 of the paper: you really need types that
depend on parameters (in particular, integer parameters).  This is,
indeed, a problem--currently, you have to do runtime checks.

Full-fledged dependent types à la Cayenne are undecidable, but there
are weaker variants that are likely to be good enough.

> The point is that this seems - for various, perfectly understandable
> reasons - not to be the priority of the implementors.
> Graphics/imagery neither.
> Nor hard numeric work (efficient, easy to manipulate arrays).

If I understand correctly, Marcin Kowalczyk is working on exactly this
last point...

> Despite my extremely deep respect for all people contributing to
> Haskell, despite my love for the language etc. I begin to suspect
> that it has been standardized too early, and if we [...] want an
> adapted functional language, either we will have to wait quite long,
> or perhaps it is the time to invent another language, with a more
> dynamic type system, with intrinsic graphic utilities, and other
> goodies.

For myself, I don't see a problem here.  For "intrinsic graphic
utilities", someone has to write the graphic libraries.  (You don't
mean they should be built into the language, do you?)  The type system
is about as strong as anyone knows how to make a static type system;
and it's not too hard to fall back on run-time type checking when
necessary (as Sergey does in BAL).

> Anyway, Sergey did a formidable work, and this should be acknowledged even
> by those who on this list criticized his presentation. Thanks.

Yes, absolutely.  I think perhaps some things could be done better
(for instance, I see that all Sergey's classes derive from Eq, which is
one of my principal complaints with the Haskell 98 classes), but I
appreciate the work and want to study it more.

Best,
	Dylan Thurston