Project Euler

1 から 5 までの数字を英単語で書けば one, two, three, four, five であり、全部で 3 + 3 + 4 + 4 + 5 = 19 の文字が使われている。

では 1 から 1000 (one thousand) までの数字をすべて英単語で書けば、全部で何文字になるか。

注: 空白文字やハイフンを数えないこと。例えば、342 (three hundred and forty-two) は 23 文字、115 (one hundred and fifteen) は20文字と数える。なお、"and" を使用するのは英国の慣習。

素直にSchemeで作りはじめたものの、ハッと思いついてCommon Lispで手抜きをしてみた。
これはひどい
しかも、全然おぼえてないからRubyとの合わせ技。

; [=c= clisp % | ruby -e 'ARGF.read.count(\"a-z\").display' ]
(loop for i from 1 to 1000
      do (format t "~R" i))

http://projecteuler.net/index.php?section=problems&id=17
http://odz.sakura.ne.jp/projecteuler/index.php?Problem%2017

-e

clispも"-e"みたいなのあったか。
でも、返値が表示されてしまう…

 clisp --silent -x '(loop for i from 1 to 1000 do (format t "~R" i))'  | head -n 1 | ruby -e 'ARGF.read.count("a-z").display'