Re: Hugs98-plus-Sept2006
[email protected] Sun, 10 Dec 2006 01:10:52 +0000 (GMT)
| Newsgroups | gmane.comp.lang.haskell.hugs.user |
|---|---|
| Message-ID | <[email protected]> |
> 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, I ran into the mutual recursion error when I attempted to load the GS.hs provided for _The Haskell Road..._. The term generating the error was 'case' although there was no instance of that word in GS.hs. I still have a lot to learn about how Hugs works. Dave > 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).