RosettaCodeData/Task/Power-set/Refal/power-set.refal

16 lines
284 B
Plaintext

$ENTRY Go {
= <Prout '[A B C D]:' <Powerset A B C D>>
<Prout '[]:' <Powerset>>
<Prout '[()]:' <Powerset ()>>;
};
Powerset {
= ();
e.X t.I, <Powerset e.X>: e.F = e.F <Append t.I e.F>;
};
Append {
t.I = ;
t.I (e.X) e.Y = (e.X t.I) <Append t.I e.Y>;
};