RosettaCodeData/Task/Caesar-cipher/Langur/caesar-cipher.langur

11 lines
320 B
Plaintext

val rot = fn(s, key) {
cp2s map(s2cp(s), by=fn(c) { rotate(rotate(c, distance=key, range='a'..'z'), distance=key, range='A'..'Z') })
}
val s = "A quick brown fox jumped over something, you know."
val key = 3
writeln " original: ", s
writeln "encrypted: ", rot(s, key)
writeln "decrypted: ", rot(rot(s, key), -key)