chicken-users
[Top][All Lists]
Advanced

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

Re: [Chicken-users] that module system...


From: felix
Subject: Re: [Chicken-users] that module system...
Date: Thu, 21 Nov 2002 09:19:51 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.0) Gecko/20020529

Peter Keller wrote:
On Wed, Nov 20, 2002 at 08:33:03AM +0100, Felix Winkelmann wrote:

In fact, no. A *proper* way of doing it would be to
integrate it right with respect to macros. And that would
need a re-implementation of the macro-system as
a whole (perhaps like the new PLT system).
Batch-compilation and macros (especially hygienic)
are a bit of a problem.


Is that something you see happening in chicken? A proper module system
that involves doing macros correctly?


Well, I would like to have something like this, of course.
But I haven't found a way of implementing it, yet. And
the amount of work done in this direction and the solutions
available show, (IMHO) that there is no real solution (yet)
to this problem. Especially with batch-compilation.

My point of view is this, screw modules. :)


Absolutely! In fact I never use them. Some naming-discipline and
controlled exports of names (really as in C) is more than enough
in 99% of the cases. But if you have a couple of macros, which
should not screw up the global macro-namespace (take, for example
an embedded, application specific language made from macros)
then you have a problem...

The only thing you need is compiled macros(both kinds) and compiled
forms of the foreign type specifications, that you can use with your
unit-based stuff. Then, there is no more need for "header files" and
the associated messyness that goes with them.

Then, make csc take a flag when it compiles non-toplevel code so you can
use it to batch compile things and then link them together at the end.

Hm, can you explain this in more detail? I'm afraid I don't fully
understand.


cheers,
felix






reply via email to

[Prev in Thread] Current Thread [Next in Thread]