*************************************************************************** * Here is a residual program of the last supercompilation by the SCP4. * The residual program is in Refal5. * You have to change the parametrs of the call of FORMULA2 with data. * Please, be carefull: * a) the order of the parametrs can be incorrect; * b) the residual program cannot be supercompiled * without some transformation to a fragment of Refal5; *************************************************************************** $EXTERN Q_ADD ,Q_SUB ,Q_MUL ,Q_DIV ; $ENTRY Go { * = <Prout <FORMULA2 s.OPER (e.1 ) (e.2 ) (e.A ) (e.B )>> ; = <A () ( 1 ) ( 5 ) ( '-' 7 ) >; } A { e1 = <Prout <FORMULA2 ADD e1>> <Prout <FORMULA2 SUB e1>> <Prout <FORMULA2 MUL e1>> <Prout <FORMULA2 DIV e1>>; } * InputFormat: <FORMULA2 s.1 (e.2 ) (e.3 ) (e.4 ) (e.5 ) > FORMULA2 { ADD (e.2 ) (e.3 ) (e.4 ) (e.5 ) , <Q_ADD (e.2 ) e.4 >:e.45 , <Q_ADD (e.3 ) e.5 >:e.46 = (e.45 ) (e.46 ) ; SUB (e.2 ) (e.3 ) (e.4 ) (e.5 ) , <Q_SUB (e.2 ) e.4 >:e.51 , <Q_SUB (e.3 ) e.5 >:e.52 = (e.51 ) (e.52 ) ; MUL (e.2 ) (e.3 ) (e.4 ) (e.5 ) , <Q_MUL (e.2 ) e.4 >:e.53 , <Q_MUL (e.2 ) e.5 >:e.54 , <Q_MUL (e.3 ) e.5 >:e.55 , <Q_MUL (e.3 ) e.4 >:e.56 , <Q_ADD (e.56 ) e.54 >:e.57 , <Q_ADD (0 ) e.55 >:e.58 , <Q_DIV (e.53 ) 1 >:e.59 , <Q_MUL (0 ) e.59 >:e.60 , <Q_MUL ('-' 2 ) e.59 >:e.61 , <Q_SUB (e.57 ) e.60 >:e.66 , <Q_SUB (e.58 ) e.61 >:e.67 = (e.66 ) (e.67 ) ; DIV (e.2 ) (e.3 ) (e.4 ) (e.5 ) , <Q_DIV (1 ) e.4 >:e.68 , <Q_MUL (e.5 ) e.68 >:e.69 , <Q_SUB (0 ) e.69 >:e.70 , <Q_DIV (e.70 ) e.4 >:e.71 , <Q_MUL (e.5 ) e.71 >:e.72 , <Q_SUB ('-' 2 ) e.72 >:e.73 , <Q_MUL (1 ) e.68 >:e.74 , <Q_MUL (1 ) e.71 >:e.75 , <Q_ADD (0 ) e.75 >:e.76 , <Q_SUB (0 ) e.74 >:e.77 , <Q_DIV (e.77 ) e.73 >:e.78 , <Q_SUB (0 ) e.76 >:e.79 , <Q_DIV (e.79 ) e.73 >:e.80 , <Q_MUL (e.2 ) e.78 >:e.81 , <Q_MUL (e.2 ) e.80 >:e.82 , <Q_MUL (e.3 ) e.80 >:e.83 , <Q_MUL (e.3 ) e.78 >:e.84 , <Q_ADD (e.84 ) e.82 >:e.85 , <Q_ADD (0 ) e.83 >:e.86 , <Q_DIV (e.81) 1 >:e.87 , <Q_MUL (0 ) e.87 >:e.88 , <Q_MUL ('-' 2 ) e.87 >:e.89 , <Q_SUB (e.85 ) e.88 >:e.94 , <Q_SUB (e.86 ) e.89 >:e.95 = (e.94 ) (e.95) ; } ****************************** The End ************************************