guile-devel
[Top][All Lists]
Advanced

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

(set! (@@ MOD NAME) EXP) considered harmful


From: Mark H Weaver
Subject: (set! (@@ MOD NAME) EXP) considered harmful
Date: Wed, 02 Sep 2009 12:17:11 -0400

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




reply via email to

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