
On 10/3/06, oleg@pobox.com
I wanted to try using OOHaskell as a library, but I've run into some problems I don't understand. I downloaded the copy from: http://homepages.cwi.nl/~ralf/OOHaskell/
both HList and OOHaskell are now available via DARCS http://darcs.haskell.org/HList/ http://darcs.haskell.org/OOHaskell/
I admit quite a few imports within these libraries are unqualified (e.g., `import Record' rather than `import HList.Record' or probably better `import Data.HList.Record'). Perhaps that's what is causing your package problems. Incidentally, adding the full qualification forces us to consider under which tree to put HList. Directly under Data? Perhaps some other place would be more appropriate?
I took Bulat's suggestion and moved things in HList around so that it was Data.HList. I installed Data.HList and also installed OOHaskell from the above url. Now I get this error when I put Shapes.hs and ShapesLub.hs in their own 'project': ShapesLub.hs:1:0: Couldn't match `HNil' against `HCons (F (Proxy Draw) (IO ())) HNil' Expected type: HNil Inferred type: HCons (F (Proxy Draw) (IO ())) HNil When using functional dependencies to combine H2ProjectByLabels ls HNil HNil HNil, arising from the instance declaration at Imported from Data.HList.Record H2ProjectByLabels (HCons (Proxy Draw) HNil) HNil (HCons (F (Proxy Draw) (IO ())) HNil) rout, arising from use of `circle' at ShapesLub.hs:31:19-24 This is much closer than before. In fact, I may even figure out the problem myself soon :) After I get this working I'll send in my darcs patches so someone can look them over and maybe accept them (or tell me what to change to get them accepted). Thanks, Jason