1.1 --- a/docs/invocation.txt Sat May 09 03:21:15 2009 +0200
1.2 +++ b/docs/invocation.txt Mon May 11 02:17:12 2009 +0200
1.3 @@ -17,7 +17,7 @@
1.4 f(1, 2, 3) # positional, f is appropriate function pointer
1.5 # ie. (*f)(A, B, C)
1.6
1.7 -Least expensive cases:
1.8 +Least expensive cases (positional plus defaults):
1.9
1.10 f(1, 2, 3) # put arguments in frame
1.11 # if f is not known, add arguments vs. parameters check
1.12 @@ -25,7 +25,7 @@
1.13 # not enough arguments are given
1.14 # if f is not known, this is obviously done at run-time
1.15
1.16 -More expensive cases:
1.17 +More expensive cases (keywords plus defaults):
1.18
1.19 f(1, 2, c=3) # prepare frame using parameter details
1.20 # (provided c is a known parameter)
1.21 @@ -37,9 +37,15 @@
1.22 # assigned (since their positions and thus the positions
1.23 # of missing parameters cannot be known)
1.24
1.25 -Awkward cases:
1.26 +Awkward cases (extra arguments):
1.27
1.28 - f(1, 2, 3, 4) # extra positional arguments
1.29 + f(1, 2, 3, 4) # put arguments in frame
1.30 + # if f is not known, add arguments vs. parameters check
1.31 + # target unpacks superfluous arguments from the end of the
1.32 + # frame
1.33 +
1.34 +Very awkward cases:
1.35 +
1.36 f(1, 2, 3, d=4) # extra keyword arguments
1.37 f(1, 2, *args) # positional bundles (possibly with defaults)
1.38 f(1, 2, **kw) # keyword bundles (possibly with defaults)