[Haskell-beginners] Linking modules
Russ Abbott
russ.abbott at gmail.com
Sat Dec 11 19:37:01 CET 2010
I have two modules Structure and Component. Module Structure defines
data Structure = Component ...
Module Component defines
data Component = ...
I would like Structure to import Component. But Component
includes functions that take a Structure as an argument. So I have (or would
like) something like this organization.
Module Structure where
import Component
data Structure = Component ...
Module Component where
data Component = ...
f :: Structure -> Component ->Structure
The functions in Component are really very Component related and should not
be moved to Structure. So how can I set up this circular relationship?
I thought that one approach would be to do something like the following. But
when I try I get all fouled up. Help would be appreciated.
Module Structure where
class Comp
data Structure = Comp ...
Module Component where
import Structure
data Component = ...
instance Comp Component
If I do this I get a complaint that class Comp needs a type parameter. If I
give it an artificial one, that leads to all sorts of other problems. Is
there a better way?
Thanks.
*
-- Russ *
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/beginners/attachments/20101211/24a1e5d7/attachment.htm>
More information about the Beginners
mailing list