chicken-users
[Top][All Lists]
Advanced

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

Re: [Chicken-users] Re: Style Guide


From: Benedikt Rosenau
Subject: Re: [Chicken-users] Re: Style Guide
Date: Wed, 7 Nov 2007 15:29:11 +0100
User-agent: Mutt/1.4i

On Wed, Nov 07, 2007 at 06:02:42AM -0800, Elf wrote:

> of course it does :)  all closures have their own namescope, as you put it. 

"Namescope" is what I come up with when lacking caffeine. That bug
has been fixed in the meantime.


> what you demonstrated above is the trick of associating state with a 
> lambda. :)

Yes. I mentioned it because newbies might follow the conversation.
As far as the style guide is concerned, I think it is useful to keep
the possibly differing semantics in mind:

(define (bla blubb) ; accept all bindings as they are now
  ...)

(define bla         ; I need some original bindings here
  (let ((...)) 
    (lambda (blubb) ...)))

So, (define (bla blubb) ...) is my default. I agree with all the
reasons you gave.

NB: the Chicken compiler assumes standard bindings by default.
Hence, redefining * will work in csi, but it will not work, if
compiled without (declare (not standard-bindings *)).
   Benedikt




reply via email to

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