rot13 demo from dan
parent
8f0cec3e16
commit
ea2a60df7e
|
@ -0,0 +1,4 @@
|
|||
REQUIRES: demos/color-picker demos/haar demos/lcd demos/nehe
|
||||
demos/numbers-game demos/hello-world demos/mslug-talk demos/rot13 ;
|
||||
|
||||
PROVIDE: demos/all ;
|
|
@ -0,0 +1,15 @@
|
|||
! Copyright (C) 2006 Daniel Ehrenberg
|
||||
! See http://factorcode.org/license.txt for BSD license.
|
||||
IN: rot13
|
||||
USING: kernel math sequences strings ;
|
||||
|
||||
: rotate ( ch base -- ch ) tuck - 13 + 26 mod + ;
|
||||
|
||||
: rot-letter ( ch -- ch )
|
||||
{
|
||||
{ [ dup letter? ] [ CHAR: a rotate ] }
|
||||
{ [ dup LETTER? ] [ CHAR: A rotate ] }
|
||||
{ [ t ] [ ] }
|
||||
} cond ;
|
||||
|
||||
: rot13 ( string -- string ) [ rot-letter ] map ;
|
Loading…
Reference in New Issue