Iavor Diatchki writes: >> Do you have an concrete example which illustrates this >> point?
> [...] consider a file A.hs that defines some data type T > and exports a function "f" that is defined in terms of a > private function "g". Now if we place "g" in a file > called "Private.hs" then A needs to import Private, but > also "Private" needs to import "A" for the definition of > "T". Ah, now it see it! Great example. But couldn't you just put T in "Foo/Base.hs", g in "Foo/Private.hs", then create "Foo/API.hs" which imports "Foo/Base.hs" and "Foo/Private.hs", and leave f in "A.hs" and import "Foo/API.hs"? Peter _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe