Sergey, Marc

I've had a look at your Docon thing.  

It's very impressive.  But I'm amazed it compiles at all!
When I fixed the makefile it showed up *all sorts* of loops.
For example, IParse_ imports DPrelude, and DPrelude imports IParse_

Getting these mutually recursive modules to work reliably involves
breaking the loop with {-# SOURCE #-} imports, and writing an .hi-boot
file by hand to break the loop.

Given this I'm not at all surprised that you get strange behaviour.

The .hi-boot stuff is not well documented. This might be a good opportunity
to document it better -- but meanwhile I suggest you have a look at
your modules to see whether you can reduce the number of loops.  Can you do 
that?

Simon

solander:~/docon > gmake export/DPrelude.o
gmake export/DPrelude.o
gmake: Circular export/DPrelude.hi <- export/DPrelude.o dependency dropped.
gmake: Circular export/SetGroup.o <- export/Common_.hi dependency dropped.
gmake: Circular export/SetGroup.o <- export/Common__.hi dependency dropped.
gmake: Circular export/Semigr_.o <- export/Common_.hi dependency dropped.
gmake: Circular export/Semigr_.o <- export/SetGroup.hi dependency dropped.
gmake: Circular export/Semigr_.o <- export/Common__.hi dependency dropped.
gmake: Circular export/SetGroup.o <- export/Group_.hi dependency dropped.
gmake: Circular export/Common__.o <- export/Group_.hi dependency dropped.
gmake: Circular export/Ring_.o <- export/Common__.hi dependency dropped.
gmake: Circular export/Ring_.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/Module_.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/VecMatr.o <- export/Common_.hi dependency dropped.
gmake: Circular export/VecMatr.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/VecMatr1.o <- export/VecMatr.hi dependency dropped.
gmake: Circular export/Char_.o <- export/Common_.hi dependency dropped.
gmake: Circular export/List_.o <- export/Common_.hi dependency dropped.
gmake: Circular export/Common1_.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/VecMatr1.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/Matr_.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/Matr_.o <- export/VecMatr.hi dependency dropped.
gmake: Circular export/Matr1_.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/Matr1_.o <- export/Matr_.hi dependency dropped.
gmake: Circular export/PP_.o <- export/Common__.hi dependency dropped.
gmake: Circular export/DInteger.o <- export/Common_.hi dependency dropped.
gmake: Circular export/DInteger.o <- export/Common__.hi dependency dropped.
gmake: Circular export/DInteger.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/DInt_.o <- export/DInteger.hi dependency dropped.
gmake: Circular export/DInt_.o <- export/Common_.hi dependency dropped.
gmake: Circular export/DInt_.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/DInt_.o <- export/Common__.hi dependency dropped.
gmake: Circular export/Int_.o <- export/DInteger.hi dependency dropped.
gmake: Circular export/Int_.o <- export/Common__.hi dependency dropped.
gmake: Circular export/Int_.o <- export/Group_.hi dependency dropped.
gmake: Circular export/Int_.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/SR_.o <- export/Common_.hi dependency dropped.
gmake: Circular export/SR_.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/ResEuc_.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/ResEuc_.o <- export/SR_.hi dependency dropped.
gmake: Circular export/ResEuc1_.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/ResEuc1_.o <- export/ResEuc_.hi dependency dropped.
gmake: Circular export/DInt_.o <- export/Common__.hi dependency dropped.
gmake: Circular export/DInteger.o <- export/Common__.hi dependency dropped.
gmake: Circular export/PP_.o <- export/RingModule.hi dependency dropped.
gmake: Circular export/Det_.o <- export/LinAlg.hi dependency dropped.
gmake: Circular export/Todiag_.o <- export/LinAlg.hi dependency dropped.
gmake: Circular export/Solvelin_.o <- export/LinAlg.hi dependency dropped.
solander:~/docon > 


Reply via email to