On Fri, 18 Jan 2002, Jonathan E. Paton wrote: > For those who haven't met RPN, or are looking for a Perlish > impliementation here is a better (working) one than I > posted earlier:
Here is something I wrote in december, while experimenting stuff. sub p($){@$=eval"(".'pop@%,'x$_[0].")"}@%{'.','='}=(sub{print pop@%},sub{print"@{%}"});for(qw'+ - * / %'){$%{$_}=eval'sub{p +2,push@%,pop(@$)'.$_.'pop@$}'}$\=$/;while(<>){chomp;for(split ){exists($%{$_})?&{$%{$_}}:push@%,$_}} It's not really obfuscated, doesn't check for errrors, could probably be shorter. Nothing fancy, really. Operations : + - * / % .. pops and print one item from the stack = prints the whole stack Enjoy, -- Philippe "BooK" Bruhat Even when the words are true, they may not speak the truth. (Moral from Groo The Wanderer #70 (Epic))