unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* (set! (@@ MOD NAME) EXP) considered harmful
@ 2009-09-02 16:17 Mark H Weaver
  2009-09-02 16:25 ` Mark H Weaver
  2009-09-03 14:57 ` Andy Wingo
  0 siblings, 2 replies; 7+ messages in thread
From: Mark H Weaver @ 2009-09-02 16:17 UTC (permalink / raw)
  To: guile-devel

The ability to set! arbitrary module top-level variables from outside
the module, using the syntax (set! (@@ MOD NAME) EXP), destroys our
ability to several important optimizations.

As long as such ability exists, we must pessimistically assume that
any module top-level variable might change at any time, which means,
for example, that we cannot inline top-level procedure applications
from within the module itself.  This could be a HUGE efficiency win in
the common case where such top-level procedures are never set! from
within the module.

Now that we have proper hygienic macros, is this functionality still
required?  If we're going to remove it, pre-2.0 seems like a good time
to do so.  We won't get another opportunity for several years.

     Mark




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

end of thread, other threads:[~2009-09-18 20:40 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-09-02 16:17 (set! (@@ MOD NAME) EXP) considered harmful Mark H Weaver
2009-09-02 16:25 ` Mark H Weaver
2009-09-03 14:57 ` Andy Wingo
2009-09-15 21:23   ` Neil Jerram
2009-09-17 22:16     ` Ludovic Courtès
2009-09-18 14:29       ` Andy Wingo
2009-09-18 20:40         ` Neil Jerram

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).