[Haskell] URLs in haskell module namespace

Einar Karttunen ekarttun at cs.helsinki.fi
Wed Mar 23 04:21:14 EST 2005


Here are some problems I see with the scheme:

1) No easy way of seing the dependencies of a single package.
Currently I can just look at the Cabal file and know what packages are
required. In the new scheme I would need to grep all the source files.
Not a very good improvement in  my opinion.

2) What about machines without an easy http connection out?
These machines are not as uncommon as you may think. Some companies have
internal networks not connected to the rest of the net (and internet
connected machines separate) - and even home I would like to use Haskell
even if there is a network outage.

3) Package versions
You cannot have to modules with the same name in your application. This
is a limit in GHC afaik, not the current import syntax. To handle
versioning you should plan ahead and make new versions support the
serialization syntax of older versions. So there would be no real
advantage. Also if we use an url like http://package/newest then 
we don't have control when we start using a new version of library
(while usually one wants to test that) and if we use
http://package/version then we have to perform the update
in all the source files which use the package (and if we support 
multiple versions then missing one will have "fun" results).

4) Does not help for nontrivial packages
Most nontrivial packages are a lot more than simple haskell source files
scattered somewhere. They may have C-sources, need configuration when
build or use alex, happy, cpphs or somesuch. 

- Einar Karttunen

More information about the Haskell mailing list