chicken-users
[Top][All Lists]
Advanced

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

Re: [Chicken-users] Autoloading optional dependencies


From: Alaric Snell-Pym
Subject: Re: [Chicken-users] Autoloading optional dependencies
Date: Mon, 13 Sep 2010 09:40:06 +0100
User-agent: Mozilla/5.0 (X11; U; NetBSD amd64; en-US; rv:1.9.1.9) Gecko/20100520 Lightning/1.0b2pre Shredder/3.0.4

On 09/13/10 07:52, Felix wrote:

When the toplevel variable passed to `autoload' refers to a module
binding, then you have to import it, otherwise it refers to an
undecorated toplevel variable.

I've just taken a look at how autoload works. Basically:

(autoload foo bar)

expands into something roughly like:

(define bar (lambda args
        (require foo)
        (let ((tmp (global-ref foo#bar)))
             (set! bar tmp)
             (apply tmp args))))

...with some extra stuff in to handle conditions arising and all that.

If there's anything fatally wrong with this approach, please say now, as
it *seems* to be working OK for Ugarit ;-)

ABS

--
Alaric Snell-Pym
http://www.snell-pym.org.uk/alaric/



reply via email to

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