4.1.5

Остаточная программа на Рефале

 

Parity    {    e1 = <F1 e1>;
}
F1 { = O;
'0' e3 = <F1 e3>;
'1' e3 = <F2 e3>;
}
F2 { = I;
'0' e3 = <F2 e3>;
'1' e3 = <F1 e3>;
}

Выдача суперкомпилятора:

$ENTRY PARITY {
 e.41  = <F5 e.41 > ;
}

* InputFormat: <F18 e.41 >
F18 {
  = I ;
 '0' e.41  = <F18 e.41 > ;
 '1' e.41  = <F5 e.41 > ;
}

* InputFormat: <F5 e.41 >
F5 {
  = O ;
 '0' e.41  = <F5 e.41 > ;
 '1' e.41  = <F18 e.41 > ;
}