Export lists in modules

Marcin 'Qrczak' Kowalczyk qrczak at knm.org.pl
Thu Feb 23 15:04:38 EST 2006

"Simon Marlow" <simonmar at microsoft.com> writes:

> The main difference is that I'm doing away with parentheses, commas, and
> export specifiers, and using layout and full declaration syntax instead.
> (I don't really want to discuss this very rough idea any more though,
> it's just a distraction, and I'm not sure I like it anyway).

I like this general idea, I was thinking about something similar
a long time ago.

But in case of a large datatype, e.g. an AST, we certainly don't
want to duplicate it in whole. It should be sufficient in the
export section.

So perhaps what is really needed is the ability to split a module
into a public part and a private part, and allowing to duplicate
certain definitions in a partial form, e.g. have both 'data Foo'
and 'data Foo = Con1 | Con2' in the same module. The details are
not obvious though because the syntax has not been designed with
this in mind.

   __("<         Marcin Kowalczyk
   \__/       qrczak at knm.org.pl
    ^^     http://qrnik.knm.org.pl/~qrczak/

More information about the Haskell-prime mailing list