[Haskell-cafe] Re: Use of abbreviations in Haskell
Achim Schneider
barsoap at web.de
Mon Jan 5 07:10:06 EST 2009
Ketil Malde <ketil at malde.org> wrote:
> Achim Schneider <barsoap at web.de> writes:
> > import [qualified] module Foo [as F] [hiding(baz)] where
> > bar = undefined
> > baz = bar
>
> Why do you want the 'where' there? Why not simply treat a file
> Foo.Bar as a concatenation of module Foo.Bar and optionally modules
> Foo.Bar.*?
>
Because the module definition syntax is "module Foo[(exports] where"...
technically, it's not necessary, but it's nice.
> > OTOH, the Ocaml folks are going to ridicule us even more. "Now they
> > redid the module system, and it's still second-class"
>
> Well, they would be wrong, wouldn't they? I don't want to "redo" the
> module system, and in fact, I think my proposal wouldn't change the
> language at all, merely how the compiler searches for modules. (Which
> it would be nice if the compilers agreed upon, of course.)
>
It's just that inline modules, especially that syntax above, reminded
me of Ocaml. It's not far from there to
foo = module Foo where
bar = undefined
import foo
--
(c) this sig last receiving data processing entity. Inspect headers
for copyright history. All rights reserved. Copying, hiring, renting,
performance and/or quoting of this signature prohibited.
More information about the Haskell-Cafe
mailing list