version 1.43, 2004/09/14 10:50:49 |
version 1.46, 2004/09/17 00:47:08 |
|
|
% $OpenXM: OpenXM/src/kan96xx/Kan/dr.sm1,v 1.42 2004/09/14 02:13:29 takayama Exp $ |
% $OpenXM: OpenXM/src/kan96xx/Kan/dr.sm1,v 1.45 2004/09/17 00:10:41 takayama Exp $ |
%% dr.sm1 (Define Ring) 1994/9/25, 26 |
%% dr.sm1 (Define Ring) 1994/9/25, 26 |
%% This file is error clean. |
%% This file is error clean. |
|
|
|
|
[( string .. universalNumber) |
[( string .. universalNumber) |
(Parse the << string >> as a universalNumber.) |
(Parse the << string >> as a universalNumber.) |
(Example: (123431232123123).. /n set) |
(Example: (123431232123123).. /n set) |
|
({ commands }.. executes the commands. << .. >> is equivalent to exec.) |
]] putUsages |
]] putUsages |
/.. { (universalNumber) data_conversion } def |
/.. { dup tag 3 eq { exec } { (universalNumber) data_conversion} ifelse } def |
|
|
[(dc) |
[(dc) |
[(Abbreviation of data_conversion.) |
[(Abbreviation of data_conversion.) |
Line 4271 $ [ff ff] fromVectors :: $ |
|
Line 4272 $ [ff ff] fromVectors :: $ |
|
[(list listToArray a) |
[(list listToArray a) |
]] putUsages |
]] putUsages |
|
|
/makeInfix { |
% Body is moved to smacro.sm1 |
[(or_attr) 4 4 -1 roll ] extension |
|
} def |
|
[(makeInfix) |
[(makeInfix) |
[(literal makeInfix) |
[(literal makeInfix) |
(Change literal to an infix operator.) |
(Change literal to an infix operator.) |
Line 4361 $ [ff ff] fromVectors :: $ |
|
Line 4360 $ [ff ff] fromVectors :: $ |
|
[(setMinus) |
[(setMinus) |
[(a b setMinus c) |
[(a b setMinus c) |
]] putUsages |
]] putUsages |
|
|
|
% Define some infix operators |
|
/~add~ { add } def /~add~ makeInfix |
|
/~sub~ { sub } def /~sub~ makeInfix |
|
/~mul~ { mul } def /~mul~ makeInfix |
|
/~div~ { div } def /~div~ makeInfix |
|
/~power~ { power } def /~power~ makeInfix |
|
/~put~ { |
|
dup tag 3 eq { exec } { } ifelse put |
|
} def |
|
/~put~ makeInfix |
|
|
|
|
; |
; |
|
|