Annotation of OpenXM/src/k097/debug/kobj2.sm1, Revision 1.1.1.1
1.1 maekawa 1: StandardContextp setcontext
2: [(parse) (/home/nobuki/SSWork/yacc/incmac.sm1) pushfile] extension
3:
4: %% These are defined in incmac.sm1
5: %%/PrimitiveContextp StandardContextp def
6: %%/Object [PrimitiveContextp] def
7:
8: /new {Object} def
9:
10: /Complex [(Complex) Object 0 get newcontext] def
11: Complex 0 get setcontext
12:
13: /new {
14: /Arglist set /FunctionValue [ ] def
15: [/a /b] /ArgNames set
16: [/a /b /this /super] pushVariables
17: [
18: Arglist ArgNames mapset
19: /super Object def
20: super [ ] {new} sendmsg2 /this set
21: Complex this {rest} primmsg {append} primmsg
22: [null null] {append} primmsg /this set
23: this 1 a {put} primmsg
24: this 2 b {put} primmsg
25: /FunctionValue this def
26: ] pop
27: popVariables
28: FunctionValue
29: } def
30:
31: /new0 {
32: /Arglist set /Argthis set /FunctionValue [ ] def
33: [/a /b] /ArgNames set
34: [/this /a /b /super] pushVariables
35: [
36: Arglist ArgNames mapset
37: /super Object def
38: super [ ] {new} sendmsg2 /this set
39: Complex this {rest} primmsg {append} primmsg
40: [null null] {append} primmsg /this set
41: this 1 a {put} primmsg
42: this 2 b {put} primmsg
43: /FunctionValue this def
44: ] pop
45: popVariables
46: FunctionValue
47: } def
48:
49: /add {
50: /Arglist set /Argthis set
51: [/this /ans /b] pushVariables
52: [
53: /this Argthis def /b Arglist def
54: /ans Complex [0 0] {new0} sendmsg2 def
55: [/ans 1 ] << this 1 get >> << b 1 get >> {add} sendmsg2 Put
56: [/ans 2 ] << this 2 get >> << b 2 get >> {add} sendmsg2 Put
57: /FunctionValue ans def
58: ] pop
59: popVariables
60: FunctionValue
61: } def
62:
63: /mul {
64: /Arglist set /Argthis set
65: [/this /ans /b /x1 /x2 /y1 /y2] pushVariables
66: [
67: /this Argthis def /b Arglist def
68: /ans Complex [0 0] {new0} sendmsg2 def
69: /x1 this 1 get def /x2 this 2 get def
70: /y1 b 1 get def /y2 b 2 get def
71: [/ans 1 ] x1 y1 {mul} sendmsg2 x2 y2 {mul} sendmsg2 {sub} sendmsg2 Put
72: [/ans 2 ] x1 y2 {mul} sendmsg2 x2 y1 {mul} sendmsg2 {add} sendmsg2 Put
73: /FunctionValue ans def
74: ] pop
75: popVariables
76: FunctionValue
77: } def
78:
79:
80: Object 0 get setcontext
81:
82:
83:
84:
85:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>