RosettaCodeData/Task/Ordered-words/Factor/ordered-words.factor

18 lines
521 B
Factor
Raw Permalink Normal View History

2013-06-05 21:47:54 +00:00
USING: grouping http.client io io.encodings.utf8 io.files
io.files.temp kernel math memoize sequences sequences.extras
unicode.case urls ;
IN: rosetta-code.ordered-words
2013-04-10 21:29:02 -07:00
2013-06-05 21:47:54 +00:00
MEMO: word-list ( -- seq )
"unixdict.txt" temp-file dup exists? [
URL" http://puzzlers.org/pub/wordlists/unixdict.txt"
over download-to
] unless utf8 file-lines ;
2013-04-10 21:29:02 -07:00
: ordered-word? ( word -- ? )
2013-06-05 21:47:54 +00:00
>lower [ <= ] monotonic? ;
2013-04-10 21:29:02 -07:00
2013-06-05 21:47:54 +00:00
: ordered-words-main ( -- )
2013-04-10 21:29:02 -07:00
word-list [ ordered-word? ] filter
2013-06-05 21:47:54 +00:00
all-longest [ print ] each ;