1.1 --- a/docs/concepts.txt Mon Oct 28 12:12:55 2013 +0100
1.2 +++ b/docs/concepts.txt Thu Oct 31 16:31:00 2013 +0100
1.3 @@ -24,6 +24,8 @@
1.4 * Class attributes are defined only within class statements.
1.5 * Instance attributes are defined only by assignments to attributes of self
1.6 or tentatively as references to attributes of self.
1.7 + * Locals are effectively attributes of the local namespace and are not
1.8 + accessible externally (and thus cannot support closures).
1.9
1.10 These restrictions apply because such attributes are thus explicitly declared,
1.11 permitting the use of tables (described below). Module and class attributes
1.12 @@ -37,6 +39,13 @@
1.13 objects for those attributes under the assumption that they will not be
1.14 changed.
1.15
1.16 +Observations during initial program inspection populate namespaces in a
1.17 +simplistic fashion. If a loop is active, definitions record that the value of
1.18 +a name can be set potentially many times. In local namespaces, definitions are
1.19 +also recorded using the mechanisms employed to track attribute usage, and such
1.20 +observations may provide a more sophisticated view of the potential values of
1.21 +local names.
1.22 +
1.23 See rejected.txt for complicating mechanisms which could be applied to
1.24 mitigate the effects of these restrictions on optimisations.
1.25