[plt-scheme] define/public doesn't like my macro

From: Robby Findler (robby at cs.uchicago.edu)
Date: Thu Jun 8 11:06:07 EDT 2006

At Thu, 8 Jun 2006 11:04:44 -0400, Matthias Felleisen wrote:
> 
> On Jun 8, 2006, at 9:49 AM, Robby Findler wrote:
> 
> >
> > On Jun 8, 2006, at 8:42 AM, Paulo J. Matos wrote:
> >
> >> On 08/06/06, Matthew Flatt <mflatt at cs.utah.edu> wrote:
> >>> But I think it's important to distinguish methods from procedures.
> >>
> >> But it doesn't seem consistent.
> >> Since you can do (foo ...) but not (for-each foo ...) so one might say
> >> procedures and methods are only half distinguished. I would prefer to
> >> do an explicit call to the method and probably have for-each/method,
> >> or map/method if I want to have higher order procedures over methods.
> >> Probably overkill but it would be more consistent, imho.
> >
> > The second requires a closure allocation and the first doesn't.
> 
> Does it truly require an allocation? Isn't this a "global" (universal) 
> function? (Perhaps you can assign to method names and in that sense it 
> is a true closure needing allocation every time. But I could see making 
> method names non-mutable i.e. they don't show up in set!). -- Matthias

I'm not quite getting it. The closure closes over `this'. How can you
avoid allocation to remember the value of `this' from inside
`for-each'?

Robby


Posted on the users mailing list.