Annotation of OpenXM/src/k097/slib.sm1, Revision 1.1.1.1
1.1 maekawa 1: K00_verbose %% if-condition
2: { %%ifbody
3: ( slib.k (slib.ccc): 8/17,1996, 3/4 -- 3/10,1997 ) message }%%end if if body
4: { %%if- else part
5: } ifelse
6: [ ] /Helplist set
7: /HelpAdd {
8: db.DebugStack setstack $In function : HelpAdd of class PrimitiveObject$ stdstack
9: /Arglist set /Argthis set /FunctionValue [ ] def
10: [/this /s ] /ArgNames set ArgNames pushVariables [ %%function body
11: [Argthis] Arglist join ArgNames mapset
12: this [ %% function args
13: Helplist s ] {Append} sendmsg2
14: /Helplist set
15: /ExitPoint ]pop popVariables %%pop argValues
16: db.DebugStack setstack pop stdstack
17: } def
18: %%end of function
19:
20: /Print {
21: db.DebugStack setstack $In function : Print of class PrimitiveObject$ stdstack
22: /Arglist set /Argthis set /FunctionValue [ ] def
23: [/this /a ] /ArgNames set ArgNames pushVariables [ %%function body
24: [Argthis] Arglist join ArgNames mapset
25: a messagen /ExitPoint ]pop popVariables %%pop argValues
26: db.DebugStack setstack pop stdstack
27: FunctionValue } def
28: %%end of function
29:
30: /Println {
31: db.DebugStack setstack $In function : Println of class PrimitiveObject$ stdstack
32: /Arglist set /Argthis set /FunctionValue [ ] def
33: [/this /a ] /ArgNames set ArgNames pushVariables [ %%function body
34: [Argthis] Arglist join ArgNames mapset
35: a message /ExitPoint ]pop popVariables %%pop argValues
36: db.DebugStack setstack pop stdstack
37: FunctionValue } def
38: %%end of function
39:
40: /Ln {
41: db.DebugStack setstack $In function : Ln of class PrimitiveObject$ stdstack
42: /Arglist set /Argthis set /FunctionValue [ ] def
43: [/this ] /ArgNames set ArgNames pushVariables [ %%function body
44: [Argthis] ArgNames mapset
45: ( ) message /ExitPoint ]pop popVariables %%pop argValues
46: db.DebugStack setstack pop stdstack
47: FunctionValue } def
48: %%end of function
49:
50: /Poly {
51: db.DebugStack setstack $In function : Poly of class PrimitiveObject$ stdstack
52: /Arglist set /Argthis set /FunctionValue [ ] def
53: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
54: [Argthis] Arglist join ArgNames mapset
55: f (poly) data_conversion /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
56: db.DebugStack setstack pop stdstack
57: FunctionValue } def
58: %%end of function
59:
60: /PolyR {
61: db.DebugStack setstack $In function : PolyR of class PrimitiveObject$ stdstack
62: /Arglist set /Argthis set /FunctionValue [ ] def
63: [/this /f /r ] /ArgNames set ArgNames pushVariables [ %%function body
64: [Argthis] Arglist join ArgNames mapset
65: f r ,, /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
66: db.DebugStack setstack pop stdstack
67: FunctionValue } def
68: %%end of function
69:
70: /Degree {
71: db.DebugStack setstack $In function : Degree of class PrimitiveObject$ stdstack
72: /Arglist set /Argthis set /FunctionValue [ ] def
73: [/this /f /v ] /ArgNames set ArgNames pushVariables [ %%function body
74: [Argthis] Arglist join ArgNames mapset
75: f v degree (universalNumber) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
76: db.DebugStack setstack pop stdstack
77: FunctionValue } def
78: %%end of function
79:
80: /Append {
81: db.DebugStack setstack $In function : Append of class PrimitiveObject$ stdstack
82: /Arglist set /Argthis set /FunctionValue [ ] def
83: [/this /f /g ] /ArgNames set ArgNames pushVariables [ %%function body
84: [Argthis] Arglist join ArgNames mapset
85: this [ %% function args
86: f [ g ] ] {Join} sendmsg2
87: /FunctionValue set {/ExitPoint goto} exec %%return
88: /ExitPoint ]pop popVariables %%pop argValues
89: db.DebugStack setstack pop stdstack
90: FunctionValue } def
91: %%end of function
92:
93: /Length {
94: db.DebugStack setstack $In function : Length of class PrimitiveObject$ stdstack
95: /Arglist set /Argthis set /FunctionValue [ ] def
96: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
97: [Argthis] Arglist join ArgNames mapset
98: f length (universalNumber) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
99: db.DebugStack setstack pop stdstack
100: FunctionValue } def
101: %%end of function
102:
103: /Indexed {
104: db.DebugStack setstack $In function : Indexed of class PrimitiveObject$ stdstack
105: /Arglist set /Argthis set /FunctionValue [ ] def
106: [/this /name /i ] /ArgNames set ArgNames pushVariables [ %%function body
107: [Argthis] Arglist join ArgNames mapset
108: name i s.Indexed /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
109: db.DebugStack setstack pop stdstack
110: FunctionValue } def
111: %%end of function
112:
113: /Indexed2 {
114: db.DebugStack setstack $In function : Indexed2 of class PrimitiveObject$ stdstack
115: /Arglist set /Argthis set /FunctionValue [ ] def
116: [/this /name /i /j ] /ArgNames set ArgNames pushVariables [ %%function body
117: [Argthis] Arglist join ArgNames mapset
118: name i j s.Indexed2 /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
119: db.DebugStack setstack pop stdstack
120: FunctionValue } def
121: %%end of function
122:
123: /Transpose {
124: db.DebugStack setstack $In function : Transpose of class PrimitiveObject$ stdstack
125: /Arglist set /Argthis set /FunctionValue [ ] def
126: [/this /mat ] /ArgNames set ArgNames pushVariables [ %%function body
127: [Argthis] Arglist join ArgNames mapset
128: mat transpose /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
129: db.DebugStack setstack pop stdstack
130: FunctionValue } def
131: %%end of function
132:
133:
134: /s.Indexed {
135: (integer) dc /arg2 set
136: /arg1 set
137: arg1 ([) arg2 (dollar) dc (]) 4 cat_n
138: } def
139:
140: /s.Indexed2 {
141: (integer) dc /arg3 set
142: (integer) dc /arg2 set
143: /arg1 set
144: arg1 ([) arg2 (dollar) dc (,) arg3 (dollar) dc (]) 6 cat_n
145: } def
146: /Groebner {
147: db.DebugStack setstack $In function : Groebner of class PrimitiveObject$ stdstack
148: /Arglist set /Argthis set /FunctionValue [ ] def
149: [/this /F ] /ArgNames set ArgNames pushVariables [ %%function body
150: [Argthis] Arglist join ArgNames mapset
151: F {[[(h). (1).]] replace homogenize} map /arg1 set
152: [arg1] groebner 0 get
153: /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
154: db.DebugStack setstack pop stdstack
155: FunctionValue } def
156: %%end of function
157:
158: /GroebnerTime {
159: db.DebugStack setstack $In function : GroebnerTime of class PrimitiveObject$ stdstack
160: /Arglist set /Argthis set /FunctionValue [ ] def
161: [/this /F ] /ArgNames set ArgNames pushVariables [ %%function body
162: [Argthis] Arglist join ArgNames mapset
163: F {[[(h). (1).]] replace homogenize} map /arg1 set
164: { [arg1] groebner 0 get } timer
165: /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
166: db.DebugStack setstack pop stdstack
167: FunctionValue } def
168: %%end of function
169:
170: /LiftStd {
171: db.DebugStack setstack $In function : LiftStd of class PrimitiveObject$ stdstack
172: /Arglist set /Argthis set /FunctionValue [ ] def
173: [/this /F ] /ArgNames set ArgNames pushVariables [ %%function body
174: [Argthis] Arglist join ArgNames mapset
175: F {[[(h). (1).]] replace homogenize} map /arg1 set
176: [arg1 [(needBack)]] groebner
177: /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
178: db.DebugStack setstack pop stdstack
179: FunctionValue } def
180: %%end of function
181:
182: /Reduction {
183: db.DebugStack setstack $In function : Reduction of class PrimitiveObject$ stdstack
184: /Arglist set /Argthis set /FunctionValue [ ] def
185: [/this /f /G ] /ArgNames set ArgNames pushVariables [ %%function body
186: [Argthis] Arglist join ArgNames mapset
187: f G reduction /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
188: db.DebugStack setstack pop stdstack
189: FunctionValue } def
190: %%end of function
191:
192: /IntegerToSm1Integer {
193: db.DebugStack setstack $In function : IntegerToSm1Integer of class PrimitiveObject$ stdstack
194: /Arglist set /Argthis set /FunctionValue [ ] def
195: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
196: [Argthis] Arglist join ArgNames mapset
197: f (integer) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
198: db.DebugStack setstack pop stdstack
199: FunctionValue } def
200: %%end of function
201:
202: /RingD {
203: db.DebugStack setstack $In function : RingD of class PrimitiveObject$ stdstack
204: /Arglist set /Argthis set /FunctionValue [ ] def
205: [/this /vList /weightMatrix /pp ] /ArgNames set ArgNames pushVariables [ %%function body
206: [Argthis] Arglist join ArgNames mapset
207: [ %%start of local variables
208: /new0 /tmp /size /n /i /j /newtmp /ringpp /argsize ] pushVariables [ %%local variables
209: this [ %% function args
210: Arglist ] {Length} sendmsg2
211: /argsize set
212: argsize (1).. eq
213: %% if-condition
214: { %%ifbody
215: [ vList ring_of_differential_operators ( ) elimination_order 0 ] define_ring
216: /tmp set tmp /FunctionValue set {/ExitPoint goto} exec %%return
217: }%%end if if body
218: { %%if- else part
219: } ifelse
220: argsize (2).. eq
221: %% if-condition
222: { %%ifbody
223: (0).. /pp set
224: }%%end if if body
225: { %%if- else part
226: } ifelse
227: this [ %% function args
228: pp ] {IntegerToSm1Integer} sendmsg2
229: /pp set
230: this [ %% function args
231: weightMatrix ] {Length} sendmsg2
232: /size set
233: this [ %% function args
234: size ] {NewVector} sendmsg2
235: /new0 set
236: /@@@.indexMode.flag.save @@@.indexMode.flag def 0 @@@.indexMode (0).. %%PSfor initvalue.
237: (integer) data_conversion
238: size (1).. sub (integer) data_conversion 1 2 -1 roll
239: { %% for body
240: (universalNumber) data_conversion /i set
241: weightMatrix [i ] Get
242: /tmp set
243: this [ %% function args
244: tmp ] {Length} sendmsg2
245: /n set
246: this [ %% function args
247: n ] {NewVector} sendmsg2
248: /newtmp set
249: (1).. /j set
250: %%for init.
251: %%for
252: { j n lt
253: { } {exit} ifelse
254: [ {%%increment
255: j (2).. {add} sendmsg2
256: /j set
257: } %%end of increment{A}
258: {%%start of B part{B}
259: newtmp [j (1).. {sub} sendmsg2
260: ] tmp [j (1).. {sub} sendmsg2
261: ] Get
262: Put
263: newtmp [j ] this [ %% function args
264: tmp [j ] Get
265: ] {IntegerToSm1Integer} sendmsg2
266: Put
267: } %% end of B part. {B}
268: 2 1 roll] {exec} map pop
269: } loop %%end of for
270: new0 [i ] newtmp Put
271: } for
272: [ vList ring_of_differential_operators new0 weight_vector pp ] define_ring /ringpp set
273: @@@.indexMode.flag.save @@@.indexMode ringpp /FunctionValue set {/ExitPoint goto} exec %%return
274: /ExitPoint ]pop popVariables %%pop the local variables
275: /ExitPoint ]pop popVariables %%pop argValues
276: db.DebugStack setstack pop stdstack
277: FunctionValue } def
278: %%end of function
279:
280: /getxvar {
281: db.DebugStack setstack $In function : getxvar of class PrimitiveObject$ stdstack
282: /Arglist set /Argthis set /FunctionValue [ ] def
283: [/this /i ] /ArgNames set ArgNames pushVariables [ %%function body
284: [Argthis] Arglist join ArgNames mapset
285: [(x) (var) i ..int ] system_variable /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
286: db.DebugStack setstack pop stdstack
287: FunctionValue } def
288: %%end of function
289:
290: /getdvar {
291: db.DebugStack setstack $In function : getdvar of class PrimitiveObject$ stdstack
292: /Arglist set /Argthis set /FunctionValue [ ] def
293: [/this /i ] /ArgNames set ArgNames pushVariables [ %%function body
294: [Argthis] Arglist join ArgNames mapset
295: [(D) (var) i ..int ] system_variable /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
296: db.DebugStack setstack pop stdstack
297: FunctionValue } def
298: %%end of function
299:
300: /getvarn {
301: db.DebugStack setstack $In function : getvarn of class PrimitiveObject$ stdstack
302: /Arglist set /Argthis set /FunctionValue [ ] def
303: [/this ] /ArgNames set ArgNames pushVariables [ %%function body
304: [Argthis] ArgNames mapset
305: [(N)] system_variable (universalNumber) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
306: db.DebugStack setstack pop stdstack
307: FunctionValue } def
308: %%end of function
309:
310: true /SetRingVariables_Verbose set
311: /SetRingVariables {
312: db.DebugStack setstack $In function : SetRingVariables of class PrimitiveObject$ stdstack
313: /Arglist set /Argthis set /FunctionValue [ ] def
314: [/this ] /ArgNames set ArgNames pushVariables [ %%function body
315: [Argthis] ArgNames mapset
316: SetRingVariables_Verbose %% if-condition
317: { %%ifbody
318: this [ %% function args
319: (SetRingVariables() Setting the global variables : ) ] {Print} sendmsg2
320: }%%end if if body
321: { %%if- else part
322: } ifelse
323: this [ %% function args
324: (0).. [(CC)] system_variable (universalNumber) dc ] {k00setRingVariables} sendmsg2
325: this [ %% function args
326: [(C)] system_variable (universalNumber) dc [(LL)] system_variable (universalNumber) dc ] {k00setRingVariables} sendmsg2
327: this [ %% function args
328: [(L)] system_variable (universalNumber) dc [(MM)] system_variable (universalNumber) dc ] {k00setRingVariables} sendmsg2
329: this [ %% function args
330: [(M)] system_variable (universalNumber) dc [(NN)] system_variable (universalNumber) dc ] {k00setRingVariables} sendmsg2
331: SetRingVariables_Verbose %% if-condition
332: { %%ifbody
333: this [ %% function args
334: ] {Ln} sendmsg2
335: }%%end if if body
336: { %%if- else part
337: } ifelse
338: /ExitPoint ]pop popVariables %%pop argValues
339: db.DebugStack setstack pop stdstack
340: FunctionValue } def
341: %%end of function
342:
343: /k00AreThereLeftBrace {
344: db.DebugStack setstack $In function : k00AreThereLeftBrace of class PrimitiveObject$ stdstack
345: /Arglist set /Argthis set /FunctionValue [ ] def
346: [/this /s ] /ArgNames set ArgNames pushVariables [ %%function body
347: [Argthis] Arglist join ArgNames mapset
348: [ %%start of local variables
349: /leftBrace /jj /slist ] pushVariables [ %%local variables
350: $[$ (array) dc 0 get (universalNumber) dc /leftBrace set
351: this [ %% function args
352: this [ %% function args
353: s ] {StringToIntegerArray} sendmsg2
354: leftBrace ] {Position} sendmsg2
355: /jj set
356: jj (1).. (0).. 2 1 roll {sub} sendmsg
357: eq not
358: %% if-condition
359: { %%ifbody
360: true /FunctionValue set {/ExitPoint goto} exec %%return
361: }%%end if if body
362: { %%if- else part
363: false /FunctionValue set {/ExitPoint goto} exec %%return
364: } ifelse
365: /ExitPoint ]pop popVariables %%pop the local variables
366: /ExitPoint ]pop popVariables %%pop argValues
367: db.DebugStack setstack pop stdstack
368: FunctionValue } def
369: %%end of function
370:
371: /k00setRingVariables {
372: db.DebugStack setstack $In function : k00setRingVariables of class PrimitiveObject$ stdstack
373: /Arglist set /Argthis set /FunctionValue [ ] def
374: [/this /tmp002_p /tmp002_q ] /ArgNames set ArgNames pushVariables [ %%function body
375: [Argthis] Arglist join ArgNames mapset
376: [ %%start of local variables
377: /tmp002_i /tmp002_v /tmp002_str ] pushVariables [ %%local variables
378: tmp002_p %%PSfor initvalue.
379: (integer) data_conversion
380: tmp002_q (1).. sub (integer) data_conversion 1 2 -1 roll
381: { %% for body
382: (universalNumber) data_conversion /tmp002_i set
383: this [ %% function args
384: tmp002_i ] {getxvar} sendmsg2
385: /tmp002_v set
386: this [ %% function args
387: tmp002_v ] {k00AreThereLeftBrace} sendmsg2
388: %% if-condition
389: { %%ifbody
390: }%%end if if body
391: { %%if- else part
392: SetRingVariables_Verbose %% if-condition
393: { %%ifbody
394: this [ %% function args
395: tmp002_v ] {Print} sendmsg2
396: this [ %% function args
397: ( ) ] {Print} sendmsg2
398: }%%end if if body
399: { %%if- else part
400: } ifelse
401: this [ %% function args
402: [ (/) tmp002_v ( $) tmp002_v ($ (poly) data_conversion def ) ] ] {AddString} sendmsg2
403: /str set
404: [(parse) str ] extension } ifelse
405: this [ %% function args
406: tmp002_i ] {getdvar} sendmsg2
407: /tmp002_v set
408: this [ %% function args
409: tmp002_v ] {k00AreThereLeftBrace} sendmsg2
410: %% if-condition
411: { %%ifbody
412: }%%end if if body
413: { %%if- else part
414: SetRingVariables_Verbose %% if-condition
415: { %%ifbody
416: this [ %% function args
417: tmp002_v ] {Print} sendmsg2
418: this [ %% function args
419: ( ) ] {Print} sendmsg2
420: }%%end if if body
421: { %%if- else part
422: } ifelse
423: this [ %% function args
424: [ (/) tmp002_v ( $) tmp002_v ($ (poly) data_conversion def ) ] ] {AddString} sendmsg2
425: /str set
426: [(parse) str ] extension } ifelse
427: } for
428: /ExitPoint ]pop popVariables %%pop the local variables
429: /ExitPoint ]pop popVariables %%pop argValues
430: db.DebugStack setstack pop stdstack
431: } def
432: %%end of function
433:
434: /AddString {
435: db.DebugStack setstack $In function : AddString of class PrimitiveObject$ stdstack
436: /Arglist set /Argthis set /FunctionValue [ ] def
437: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
438: [Argthis] Arglist join ArgNames mapset
439: f aload length cat_n /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
440: db.DebugStack setstack pop stdstack
441: FunctionValue } def
442: %%end of function
443:
444: /IntegerToString {
445: db.DebugStack setstack $In function : IntegerToString of class PrimitiveObject$ stdstack
446: /Arglist set /Argthis set /FunctionValue [ ] def
447: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
448: [Argthis] Arglist join ArgNames mapset
449: f (string) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
450: db.DebugStack setstack pop stdstack
451: FunctionValue } def
452: %%end of function
453:
454: /Replace {
455: db.DebugStack setstack $In function : Replace of class PrimitiveObject$ stdstack
456: /Arglist set /Argthis set /FunctionValue [ ] def
457: [/this /f /rule ] /ArgNames set ArgNames pushVariables [ %%function body
458: [Argthis] Arglist join ArgNames mapset
459: f rule replace /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
460: db.DebugStack setstack pop stdstack
461: FunctionValue } def
462: %%end of function
463:
464: /AsciiToString {
465: db.DebugStack setstack $In function : AsciiToString of class PrimitiveObject$ stdstack
466: /Arglist set /Argthis set /FunctionValue [ ] def
467: [/this /c ] /ArgNames set ArgNames pushVariables [ %%function body
468: [Argthis] Arglist join ArgNames mapset
469: c (integer) dc (string) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
470: db.DebugStack setstack pop stdstack
471: FunctionValue } def
472: %%end of function
473:
474: /ToString {
475: db.DebugStack setstack $In function : ToString of class PrimitiveObject$ stdstack
476: /Arglist set /Argthis set /FunctionValue [ ] def
477: [/this /p ] /ArgNames set ArgNames pushVariables [ %%function body
478: [Argthis] Arglist join ArgNames mapset
479: [ %%start of local variables
480: /n /ans /i ] pushVariables [ %%local variables
481: [ ] /ans set
482: this [ %% function args
483: p ] {IsArray} sendmsg2
484: %% if-condition
485: { %%ifbody
486: this [ %% function args
487: p ] {Length} sendmsg2
488: /n set
489: this [ %% function args
490: ans ([ ) ] {Append} sendmsg2
491: /ans set
492: (0).. /i set
493: %%for init.
494: %%for
495: { i n lt
496: { } {exit} ifelse
497: [ {%%increment
498: /i i (1).. {add} sendmsg2 def
499: } %%end of increment{A}
500: {%%start of B part{B}
501: this [ %% function args
502: ans this [ %% function args
503: p [i ] Get
504: ] {ToString} sendmsg2
505: ] {Append} sendmsg2
506: /ans set
507: i n (1).. {sub} sendmsg2
508: eq not
509: %% if-condition
510: { %%ifbody
511: this [ %% function args
512: ans ( , ) ] {Append} sendmsg2
513: /ans set
514: }%%end if if body
515: { %%if- else part
516: } ifelse
517: } %% end of B part. {B}
518: 2 1 roll] {exec} map pop
519: } loop %%end of for
520: this [ %% function args
521: ans ( ] ) ] {Append} sendmsg2
522: /ans set
523: }%%end if if body
524: { %%if- else part
525: [ p (dollar) dc ] /ans set
526: } ifelse
527: this [ %% function args
528: ans ] {AddString} sendmsg2
529: /FunctionValue set {/ExitPoint goto} exec %%return
530: /ExitPoint ]pop popVariables %%pop the local variables
531: /ExitPoint ]pop popVariables %%pop argValues
532: db.DebugStack setstack pop stdstack
533: FunctionValue } def
534: %%end of function
535:
536: /IsArray {
537: db.DebugStack setstack $In function : IsArray of class PrimitiveObject$ stdstack
538: /Arglist set /Argthis set /FunctionValue [ ] def
539: [/this /p ] /ArgNames set ArgNames pushVariables [ %%function body
540: [Argthis] Arglist join ArgNames mapset
541: p isArray /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
542: db.DebugStack setstack pop stdstack
543: FunctionValue } def
544: %%end of function
545:
546: /Denominator {
547: db.DebugStack setstack $In function : Denominator of class PrimitiveObject$ stdstack
548: /Arglist set /Argthis set /FunctionValue [ ] def
549: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
550: [Argthis] Arglist join ArgNames mapset
551: f (denominator) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
552: db.DebugStack setstack pop stdstack
553: FunctionValue } def
554: %%end of function
555:
556: /Numerator {
557: db.DebugStack setstack $In function : Numerator of class PrimitiveObject$ stdstack
558: /Arglist set /Argthis set /FunctionValue [ ] def
559: [/this /f ] /ArgNames set ArgNames pushVariables [ %%function body
560: [Argthis] Arglist join ArgNames mapset
561: f (numerator) dc /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
562: db.DebugStack setstack pop stdstack
563: FunctionValue } def
564: %%end of function
565:
566: /Replace {
567: db.DebugStack setstack $In function : Replace of class PrimitiveObject$ stdstack
568: /Arglist set /Argthis set /FunctionValue [ ] def
569: [/this /f /rule ] /ArgNames set ArgNames pushVariables [ %%function body
570: [Argthis] Arglist join ArgNames mapset
571: [ %%start of local variables
572: /ans /n /tmp /i /num /den ] pushVariables [ %%local variables
573: this [ %% function args
574: f ] {IsArray} sendmsg2
575: %% if-condition
576: { %%ifbody
577: this [ %% function args
578: f ] {Length} sendmsg2
579: /n set
580: [ ] /ans set
581: (0).. /i set
582: %%for init.
583: %%for
584: { i n lt
585: { } {exit} ifelse
586: [ {%%increment
587: /i i (1).. {add} sendmsg2 def
588: } %%end of increment{A}
589: {%%start of B part{B}
590: this [ %% function args
591: ans this [ %% function args
592: f [i ] Get
593: rule ] {Replace} sendmsg2
594: ] {Append} sendmsg2
595: /ans set
596: } %% end of B part. {B}
597: 2 1 roll] {exec} map pop
598: } loop %%end of for
599: ans /FunctionValue set {/ExitPoint goto} exec %%return
600: }%%end if if body
601: { %%if- else part
602: } ifelse
603: f tag RationalFunctionP eq %% if-condition
604: { %%ifbody
605: this [ %% function args
606: f ] {Numerator} sendmsg2
607: /num set
608: this [ %% function args
609: f ] {Denominator} sendmsg2
610: /den set
611: num rule replace /num set
612: den rule replace /den set
613: num den {div} sendmsg2
614: /FunctionValue set {/ExitPoint goto} exec %%return
615: }%%end if if body
616: { %%if- else part
617: } ifelse
618: f rule replace /FunctionValue set /ExitPoint ]pop popVariables %%pop the local variables
619: /ExitPoint ]pop popVariables %%pop argValues
620: db.DebugStack setstack pop stdstack
621: FunctionValue } def
622: %%end of function
623:
624: /Map {
625: db.DebugStack setstack $In function : Map of class PrimitiveObject$ stdstack
626: /Arglist set /Argthis set /FunctionValue [ ] def
627: [/this /karg /func ] /ArgNames set ArgNames pushVariables [ %%function body
628: [Argthis] Arglist join ArgNames mapset
629: karg { [ 2 -1 roll ] this 2 -1 roll [(parse) func ] extension pop } map /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
630: db.DebugStack setstack pop stdstack
631: FunctionValue } def
632: %%end of function
633:
634: this [ %% function args
635: [ (Map) [ (Map(karg,func) applies the function <<func>> to the <<karg>>(string func).) ( Ex. Map([82,83,85],"AsciiToString"):) ] ] ] {HelpAdd} sendmsg2
636: /Position {
637: db.DebugStack setstack $In function : Position of class PrimitiveObject$ stdstack
638: /Arglist set /Argthis set /FunctionValue [ ] def
639: [/this /list /elem ] /ArgNames set ArgNames pushVariables [ %%function body
640: [Argthis] Arglist join ArgNames mapset
641: [ %%start of local variables
642: /n /pos /i ] pushVariables [ %%local variables
643: this [ %% function args
644: list ] {Length} sendmsg2
645: /n set
646: (1).. (0).. 2 1 roll {sub} sendmsg
647: /pos set
648: (0).. /i set
649: %%for init.
650: %%for
651: { i n lt
652: { } {exit} ifelse
653: [ {%%increment
654: /i i (1).. {add} sendmsg2 def
655: } %%end of increment{A}
656: {%%start of B part{B}
657: elem list [i ] Get
658: eq
659: %% if-condition
660: { %%ifbody
661: i /pos set
662: /k00.label0 goto }%%end if if body
663: { %%if- else part
664: } ifelse
665: } %% end of B part. {B}
666: 2 1 roll] {exec} map pop
667: } loop %%end of for
668: /k00.label0 pos /FunctionValue set {/ExitPoint goto} exec %%return
669: /ExitPoint ]pop popVariables %%pop the local variables
670: /ExitPoint ]pop popVariables %%pop argValues
671: db.DebugStack setstack pop stdstack
672: FunctionValue } def
673: %%end of function
674:
675: this [ %% function args
676: [ (Position) [ (Position(list,elem) returns the position p of the element <<elem>> in) ( the array <<list>>. If <<elem>> is not in <<list>>, it return -1) ( (array list).) (Ex. Position([1,34,2],34): ) ] ] ] {HelpAdd} sendmsg2
677: /StringToIntegerArray {
678: db.DebugStack setstack $In function : StringToIntegerArray of class PrimitiveObject$ stdstack
679: /Arglist set /Argthis set /FunctionValue [ ] def
680: [/this /s ] /ArgNames set ArgNames pushVariables [ %%function body
681: [Argthis] Arglist join ArgNames mapset
682: s (array) dc { (universalNumber) dc } map /FunctionValue set /ExitPoint ]pop popVariables %%pop argValues
683: db.DebugStack setstack pop stdstack
684: FunctionValue } def
685: %%end of function
686:
687: this [ %% function args
688: [ (StringToIntegerArray) [ (StringToIntegerArray(s) decomposes the string <<s>> into an array of) (ascii codes of <<s>> (string s).) (cf. AsciiToString.) ] ] ] {HelpAdd} sendmsg2
689: /StringToAsciiArray {
690: db.DebugStack setstack $In function : StringToAsciiArray of class PrimitiveObject$ stdstack
691: /Arglist set /Argthis set /FunctionValue [ ] def
692: [/this /s ] /ArgNames set ArgNames pushVariables [ %%function body
693: [Argthis] Arglist join ArgNames mapset
694: this [ %% function args
695: s ] {StringToIntegerArray} sendmsg2
696: /FunctionValue set {/ExitPoint goto} exec %%return
697: /ExitPoint ]pop popVariables %%pop argValues
698: db.DebugStack setstack pop stdstack
699: FunctionValue } def
700: %%end of function
701:
702: this [ %% function args
703: [ (StringToAsciiArray) [ (StringToAsciiArray(s) is StringToIntegerArray(s).) ] ] ] {HelpAdd} sendmsg2
704: /NewArray {
705: db.DebugStack setstack $In function : NewArray of class PrimitiveObject$ stdstack
706: /Arglist set /Argthis set /FunctionValue [ ] def
707: [/this /n ] /ArgNames set ArgNames pushVariables [ %%function body
708: [Argthis] Arglist join ArgNames mapset
709: this [ %% function args
710: n ] {NewVector} sendmsg2
711: /FunctionValue set {/ExitPoint goto} exec %%return
712: /ExitPoint ]pop popVariables %%pop argValues
713: db.DebugStack setstack pop stdstack
714: FunctionValue } def
715: %%end of function
716:
717: this [ %% function args
718: [ (NewArray) [ (NewArray(n) returns an array of size n (integer n).) ] ] ] {HelpAdd} sendmsg2
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>