[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: module questions




> From: Matthias Felleisen <matthias@ccs.neu.edu>
> Cc: plt-scheme@fast.cs.utah.edu
> Reply-To: matthias@ccs.neu.edu
> Date: Fri, 28 Dec 2001 08:57:08 -0500 (EST)
> 
> 
> You should consider using Units for now if you have groups of mutually
> recursive functions that live in different worlds. It indicates that you
> really have components that distinct people (even including you now and you
> much later) write and link together. -- Matthias
> 

You're right about the fact that mutually recursive functions "belong" in
the same module, of course.  I just want to split the functions into
different files for conceptual clarity.

I hadn't thought of using units.  Currently, units are a library extension;
are they going to be maintained in the future?  Or is the module system
going to expand to take over their functionality entirely?

Also, it occurred to me after posting that a much simpler way to achieve my
goals is simply to use "load" to bring together files with mutual
dependencies into a third file, which could itself be a module.  This
didn't occur to me because I was corrupted (*ahem*) by my experiences with
python, where there is no "load", just modules.  Interestingly, python
seems to handle mutually recursive intermodule references without any
problem.  What is the reason for the prohibition on cyclic module
dependencies in mzscheme?

Mike