RosettaCodeData/Task/Reverse-words-in-a-string/Bracmat/reverse-words-in-a-string.bracmat
2015-02-20 09:02:09 -05:00

37 lines
795 B
Text

("---------- Ice and Fire ------------
fire, in end will world the say Some
ice. in say Some
desire of tasted I've what From
fire. favor who those with hold I
... elided paragraph last ...
Frost Robert -----------------------"
: ?text
& ( reverse
= token tokens reversed
. :?tokens
& whl
' ( @( !arg
: ?token (" "|\t|\r) ?arg
)
& !tokens !token:?tokens
)
& !tokens !arg:?tokens
& :?reversed
& whl
' ( !tokens:%?token %?tokens
& " " !token !reversed:?reversed
)
& !tokens !reversed:?reversed
& str$!reversed
)
& :?output
& whl
' ( @(!text:?line \n ?text)
& !output reverse$!line \n:?output
)
& !output reverse$!text:?output
& out$str$!output
);