diff --git a/pep-0227.txt b/pep-0227.txt index 8aebea879..cca2defbf 100644 --- a/pep-0227.txt +++ b/pep-0227.txt @@ -221,16 +221,12 @@ are unusual for lexically scoped languages; there is typically a mechanism to create name bindings (e.g. lambda and let in Scheme) and a mechanism to change the bindings (set! in Scheme). -XXX Alex Martelli suggests comparison with Java, which does not -allow name bindings to hide earlier bindings. Examples ======== A few examples are included to illustrate the way the rules work. -XXX Explain the examples - :: >>> def make_adder(base): @@ -289,8 +285,6 @@ The call to ``g()`` will refer to the variable i bound in ``f()`` by the for loop. If ``g()`` is called before the loop is executed, a NameError will be raised. -XXX need some counterexamples - Backwards compatibility ======================= @@ -479,8 +473,6 @@ straightforward manner, they are preferred. Implementation ============== -XXX Jeremy, is this still the case? - The implementation for C Python uses flat closures [1]_. Each def or lambda expression that is executed will create a closure if the body of the function or any contained function has free @@ -504,8 +496,6 @@ that access an enclosing scope is returned, should not prevent unreferenced objects from being reclaimed by the garbage collector. -XXX Much more to say here - References ========== @@ -517,7 +507,6 @@ References Copyright ========= -XXX .. Local Variables: