2008-08-03 | Paul Boddie | raw annotate files changeset graph | Changed the treatment of boolean status (for tests and conditional jumps) such that a special status register would be involved and that the current value would be preserved. Added a LoadBoolean instruction, which loads the boolean status into the current value (using the appropriate object). Changed temporary storage usage for lambda definitions with default values, removing the ensure_temp method. Re-introduced and cleaned up temporary storage usage (and local usage) attributes for program units. |
1 #!/usr/bin/env python 2 3 x = 123 4 5 def f(a, b, c=4): 6 pass 7 8 f(1, 2, 3) 9 f(1, b=2, c=3) 10 f(c=3, b=2, a=1) 11 f(1, 2) 12 13 g = f 14 g(1, c=3, b=2) 15 g(1, 2) 16 17 def g(a, c, b=5): 18 pass 19 20 g(1, c=3, b=2) 21 g(1, 3) 22 23 def h(a, b, c=f(1, 2, 3)): 24 pass 25 26 h(1, 2, 3) 27 h(1, 2) 28 29 # vim: tabstop=4 expandtab shiftwidth=4