RosettaCodeData/Task/Semordnilap/ArkScript/semordnilap.ark

15 lines
433 B
Plaintext

(import std.IO)
(import std.String)
(import std.Dict)
(import std.List)
(let words (string:split (io:readFile "tests/unittests/resources/RosettaSuite/res/unixdict.txt") "\n"))
(let d (dict))
(list:forEach words (fun (word) (dict:add d word true)))
(let keep (list:filter words (fun (word)
(and (< word (string:reverse word)) (not (nil? (dict:get d (string:reverse word))))))))
(print (len keep))
(print (list:slice keep 0 5 1))