That’s rather chicken-and-egg. (Having looked at the Hugs code, it’s beyond this “expert” to figure out how to implement support in Hugs.)
Here’s a laborious tactic:
- Try to load ghc into Hugs. It’ll give you two (more or less at random) modules that are mutually recursive.
- Trawl through those two to find the datatypes that are mentioned in both and declared in only one.
- Create an extra module containing those data decls.
- Comment out the data decls in the clashing modules; put an
import
in both for the extra module. - Rinse and repeat.
- You can get a large hint by looking inside
Hugs.Prelude
. But beware that getsmake
d individually by the Hugs installer – so we have to includemake
within the cordon sanitaire?