Cabal vs Haskell (was RE: build-depends harmful (was RE: import resolution))

Simon Marlow simonmar at
Wed Apr 20 07:15:42 EDT 2005

On 20 April 2005 11:56, S. Alexander Jacobson wrote:

> Lastly, I think you proposal to add package naes to the source is
> seriously at odds with your commment from earlier:

I'm not proposing to add package names to source code.

The rest of your post was based on this misconception, so I won't answer

I realise my description of the idea wasn't as complete as it could have
been.  I'll try to describe the idea more precisely.  (note this isn't a
proposal as such).

   - source code continues to use module *names* only.

   - define module *identifier* as (package name, module name) pair

   - in the context of each module's source, there is assumed to be 
     a mapping from module name to module identifier established by
     some external mechanism.

The "external mechanism" referred to here could be GHC's -package flags,
or Cabal's build-depends, for example.  For the purposes of the language
definition, it doesn't matter.

>    Also, the Haskell module hierarchy is supposed to reflect
>    functionality, whereas package names are purely administrative.
>    This is a reason for not including package names in source code.

My position on this has (still) not changed!


More information about the Libraries mailing list