***************************************************************************
* 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 ************************************