RosettaCodeData/Task/Look-and-say-sequence/Factor/look-and-say-sequence.factor
Ingy döt Net db842d013d A-M baby
2013-04-10 21:29:02 -07:00

10 lines
313 B
Factor

: (look-and-say) ( str -- )
unclip-slice swap [ 1 ] 2dip [
2dup = [ drop [ 1 + ] dip ] [
[ [ number>string % ] dip , 1 ] dip
] if
] each [ number>string % ] [ , ] bi* ;
: look-and-say ( str -- str' ) [ (look-and-say) ] "" make ;
"1" 10 [ dup print look-and-say ] times print