unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* Elisp flet construct
@ 2009-07-20 17:53 Daniel Kraft
  2009-07-21 13:10 ` Daniel Kraft
  2009-07-23 20:44 ` Andy Wingo
  0 siblings, 2 replies; 11+ messages in thread
From: Daniel Kraft @ 2009-07-20 17:53 UTC (permalink / raw)
  To: guile-devel; +Cc: Andy Wingo, Ken Raeburn, Neil Jerram

Hi all,

in the %nil thread a suggestion was brought up to support the `flet' 
construct (and `flet*' as well, if we choose to do so at all, I favour) 
in Guile's upcoming elisp implementation that behaves just like a let 
for function-slot bindings, enabling dynamic scoping for them.

It is no "official" elisp construct, but according to what I heard 
there, can be useful at some times (I guess the use is mainly to locally 
alter bindings of standard functions for some code executed without a 
risk of permanently messing things up).  So I don't know how you regard 
addition of "extensions"...?

 From an implementation point of view, I see both an argument against 
and in favour of this extension:

* As implemented at the moment, it would be fairly easy to add 
flet/flet* to the compiler.

* If we do not implement flet, we can implement the function-slots 
without indirection via fluids but rather use the Guile symbol bindings 
directly.  This is for sure a simplification especially performance 
wise, but I can't say how much it really affects.  Most bindings in use 
are, I guess, variables, so we save the fluid-references only in a 
fraction of cases.

Any comments welcome, so we can decide upon this.

Thanks,
Daniel

-- 
Done:  Arc-Bar-Cav-Ran-Rog-Sam-Tou-Val-Wiz
To go: Hea-Kni-Mon-Pri




^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2009-07-24  6:38 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-07-20 17:53 Elisp flet construct Daniel Kraft
2009-07-21 13:10 ` Daniel Kraft
2009-07-21 18:35   ` Ken Raeburn
2009-07-21 19:32     ` Daniel Kraft
2009-07-21 21:33       ` Ken Raeburn
2009-07-23 20:46   ` Andy Wingo
2009-07-23 21:53     ` Ken Raeburn
2009-07-23 22:50       ` Andy Wingo
2009-07-24  6:38     ` Daniel Kraft
2009-07-23 20:44 ` Andy Wingo
2009-07-24  6:26   ` Daniel Kraft

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).