[Hugs-users] Hugs98-plus-Sept2006

Ross Paterson ross at soi.city.ac.uk
Sat Dec 9 18:47:56 EST 2006


On Sat, Dec 09, 2006 at 05:23:34PM -0600, Mark Hills wrote:
> [patient explanation of how Hugs finds hierarchical modules]
>
> I only have two files named Prelude.hs, the one under base and the one
> under hugsbase. The one under base simply wraps the one under hugsbase
> (it imports it at the end), I'm assuming to allow the definitions to be
> Hugs-specific (since they use primitives) while still providing a
> standard location for the Prelude, in case you want to run your programs
> using a different Haskell system like GHC.

Another reason for a separate Hugs.Prelude is that it exports some
extra things.  This is because Haskell 98 has the Prelude and some
other library modules import each other, and Hugs does not support
mutually recursive modules, so it simulates it by having the Prelude
and the other modules import another module with the real definitions
(Hugs.Prelude).  Also, Prelude.hs is shared code with GHC, except for
the imports (courtesy of cpp).



More information about the Hugs-Users mailing list