1.1 --- a/docs/invocation.txt Mon Jun 01 02:41:57 2009 +0200
1.2 +++ b/docs/invocation.txt Mon Jun 01 21:10:47 2009 +0200
1.3 @@ -71,7 +71,7 @@
1.4
1.5 f(obj, 1, 2) # f known as function at compile-time
1.6
1.7 - f -> don't get any context information
1.8 + f -> f (context is null)
1.9 obj -> argument #1
1.10 1 -> argument #2
1.11 2 -> argument #3
1.12 @@ -80,8 +80,8 @@
1.13
1.14 f(obj, 1, 2) # f known as C.m at compile-time (context is C)
1.15
1.16 - f -> C.m - don't get any context information
1.17 - obj -> argument #1
1.18 + f -> C.m (context is class C)
1.19 + obj -> argument #1 (must be tested against the context)
1.20 1 -> argument #2
1.21 2 -> argument #3
1.22
1.23 @@ -99,13 +99,13 @@
1.24
1.25 f(obj, 1, 2) # f known as C at compile-time
1.26
1.27 - f -> C.__init__
1.28 - -> new instance is argument #1
1.29 + f -> instantiator of C
1.30 + -> (argument #1 reserved for a new instance made by the instantiator)
1.31 obj -> argument #2
1.32 1 -> argument #3
1.33 2 -> argument #4
1.34
1.35 - The new instance must be manually provided as the result after the call.
1.36 + The new instance must be provided as the result of the call.
1.37
1.38 Argument lists for unknown callables:
1.39
1.40 @@ -119,7 +119,9 @@
1.41
1.42 Then, check the context and shift the frame if necessary:
1.43
1.44 - <context> is module or class:
1.45 + f is class: no change
1.46 +
1.47 + <context> is class:
1.48 (<context>, obj, 1, 2) -> (obj, 1, 2)
1.49
1.50 <context> is instance: no change
1.51 @@ -143,8 +145,6 @@
1.52 2 -> argument #4
1.53
1.54 Then jump without switching frames.
1.55 - It should be possible to replace the old, tentative context information in the
1.56 - frame.
1.57
1.58 Defaults for unknown callables:
1.59