RosettaCodeData/Task/Exponentiation-operator/Factor/exponentiation-operator-4.factor

7 lines
152 B
Factor
Raw Permalink Normal View History

2013-04-10 21:29:02 -07:00
: (pow) ( f n -- f' )
[ 1 ] 2dip
[ dup 1 = ] [
dup even? [ [ sq ] [ 2 /i ] bi* ] [ [ [ * ] keep ] dip 1 - ] if
] until
drop * ;