
On Tue, Mar 13, 2007 at 11:48:41AM +0000, Neil Mitchell wrote:
I think JHC supports recursive modules properly.
yes. it collects all modules and breaks them into strongly connected components and compiles each such component as a unit. It does make things quite nice during development. However, I have found that due to the prelude being pulled into everything by default I end up with a massive prelude-wad of recursive modules that can take a bit for jhc to chug through and compile. Though, I don't see this as being an issue for end users since the situation just doesn't work at all with other compilers. Recursive modules don't come up a whole lot, but you have to mentally page out a lot of the task you are working on in order to refactor your module layout when it comes up, it is nice just to be able to continue working and delay thinking about module layout after you complete the task at hand. A lot of the times, recursive modules do make sense though. The logical layout of code you want to present to the user does not always agree with the ideal implementation layout and it is nice to have the ability to decouple those. I believe at least one compiler went the other route and allowed multiple (possibly recursive) module definitions in a single file. John -- John Meacham - ⑆repetae.ne⑆john⑈