[BACK]Return to kobj2.sm1 CVS log [TXT][DIR] Up to [local] / OpenXM / src / k097 / debug

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>