[plt-scheme] Simple IDE questions: multi-file projects
Thanks all for the extremely fast answers!
I understood that I need to start using modules instead of files with
load.
So I'm trying (still)...
Problem I'm running into: mutually-recursive modules (A requires B, B
requires A). I get a cycle error.
I have found a thread on the mailing list (from 2004 (*)), that
suggests that it's not feasible "out of the box".
So I am trying to refactor the code to avoid this, but does not seem
possible.
While I'm still trying, I can't help wondering: what is wrong with
mutually-recursive modules?
Note that I understand the technical reason of why a cycle is bad,
because a module can have expressions that have to be evaluated, so
all definitions must be there, etc. -- but all my modules are just
define's, the actual code is in the examples/tests -- so there is
indeed no real problem with the dependencies (I guess that's why the
solution with files/load was working nicely.
Any simple way out of this tunnel?
-- Éric
(*) http://article.gmane.org/gmane.lisp.scheme.plt/6081
PS: BTW this might be a bug:
a circular dependency of the type:
A requires B
B requires (only-in A foo)
does not result in a cyclic error, but in an out of memory error. (I
guess one would expect the same circularity error)
On Sep 8, 2008, at 13:55 , Danny Yoo wrote:
>> I have a multi-file project, all files open, I debug one of the
>> test file
>> (examples.scm) that starts by loading other files:
>>
>> (load "ds-fp.scm")
>> (load "test.scm")
>> (load "macros.scm")
>
> Are you using PLT Scheme modules? It looks like you're using "load",
> which isn't involving the module system. See:
>
> http://docs.plt-scheme.org/guide/intro.html#(part._use-module)
>
> http://docs.plt-scheme.org/guide/module-basics.html
>
>
> Good luck to you!