1 <PUT-DECL DFLOAT '<<PRIMTYPE UVECTOR> [2 FIX]>>
3 <DEFINE DFLOAT (OPER "TUPLE" ARGS "AUX" (NARGS <LENGTH .ARGS>) RES)
4 #DECL ((OPER) ATOM (ARGS) <TUPLE <OR FLOAT DFLOAT> [REST DFLOAT]>)
5 <COND (<OR <==? .OPER ADD>
9 <COND (<OR <L? .NARGS 2>
11 <ERROR WRONG-NUMBER-OF-ARGS!-ERRORS DOUBLE .OPER>)
19 <CALL DOUBLE ADD <1 .ARGS> <2 .ARGS> .RES>)
21 <CALL DOUBLE MUL <1 .ARGS> <2 .ARGS> .RES>)
23 <CALL DOUBLE SUB <1 .ARGS> <2 .ARGS> .RES>)
25 <CALL DOUBLE DIV <1 .ARGS> <2 .ARGS> .RES>)>
30 <COND (<N==? .NARGS 2>
31 <ERROR WRONG-NUMBER-OF-ARGS!-ERRORS DOUBLE .OPER>)
35 <CALL DOUBLE G? <1 .ARGS> <2 .ARGS>>)
37 <CALL DOUBLE =? <1 .ARGS> <2 .ARGS>>)
39 <CALL DOUBLE L? <1 .ARGS> <2 .ARGS>>)>)>)
40 (<==? .OPER DOUBLE-TO-SINGLE>
41 <COND (<N==? .NARGS 1>
42 <ERROR WRONG-NUMBER-OF-ARGS!-ERRORS DOUBLE .OPER>)
44 <CALL DOUBLE DOUBLE-TO-SINGLE <1 .ARGS>>)>)
45 (<==? .OPER SINGLE-TO-DOUBLE>
46 <COND (<OR <L? .NARGS 1>
48 <ERROR WRONG-NUMBER-OF-ARGS!-ERRORS DOUBLE .OPER>)
51 <CALL DOUBLE SINGLE-TO-DOUBLE <1 .ARGS>
54 <CALL DOUBLE SINGLE-TO-DOUBLE <1 .ARGS>
55 <SET RES <IUVECTOR 2>>>)>