[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] whither the module system
From: |
Felix Winkelmann |
Subject: |
Re: [Chicken-users] whither the module system |
Date: |
Mon, 22 Sep 2003 07:33:51 +0200 |
User-agent: |
Opera7.11/Win32 M2 build 2887 |
On Sat, 20 Sep 2003 18:01:31 -0700, Miles Egan <address@hidden> wrote:
I can't find any docs on the module system in the most recent release.
Has it been dropped?
Yes, the old module system has been dropped. It was an awful hack and
didn't
work in the general case (like introducing identifiers at macro-expansion
time)
If so, how do chicken programmers protect themselves from namespace
collisions.
There a generally several ways.
1) Use separate compilation and export toplevel bindings with (DECLARE
(EXPORT ...)) 2) Use the syntax-case module system (which is pretty
powerful), but note that this
does *not* work with separate compilation.
3) Use the STRUCTUREs thingy (http://www.call-with-current-
continuation/structures.html),
which doesn't work for macros, but is a relatively clean method of
handling
namespace collision. It's also fully higher-order and compositional.
cheers,
felix