Phrase reversals: Difference between revisions

Add Refal
imported>MaD70
(Moved various BASIC dialects under same major header)
(Add Refal)
Line 2,381:
Each word reversed : attesor edoc esarhp lasrever
Word-order reversed : reversal phrase code rosetta</pre>
 
=={{header|Refal}}==
<syntaxhighlight lang="refal">$ENTRY Go {
, 'rosetta code phrase reversal': e.Str
= <Prout <Reverse e.Str>>
<Prout <Join <Each Reverse <Split e.Str>>>>
<Prout <Join <Reverse <Split e.Str>>>>;
};
 
Reverse {
= ;
t.X e.Y = <Reverse e.Y> t.X;
};
 
Split {
(e.X) = (e.X);
(e.X) ' ' e.Y = (e.X) <Split () e.Y>;
(e.X) s.C e.Y = <Split (e.X s.C) e.Y>;
e.X = <Split () e.X>;
};
 
Join {
= ;
(e.X) = e.X;
(e.X) e.Y = e.X ' ' <Join e.Y>;
};
 
Each {
s.F = ;
s.F (e.X) e.Y = (<Mu s.F e.X>) <Each s.F e.Y>;
};</syntaxhighlight>
{{out}}
<pre>lasrever esarhp edoc attesor
attesor edoc esarhp lasrever
reversal phrase code rosetta</pre>
 
=={{header|REXX}}==
2,095

edits