Created
December 7, 2012 15:44
-
-
Save bouzuya/4234063 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(apply + (filter #(or (zero? (mod % 3)) (zero? (mod % 5))) (range 1000))) |
余談ですが,最近「仕様」だとか「設計」だとか,それらに対するベンダ・プログラマの態度・姿勢について考えています.(range n)
と (range 1 n)
は,それらについてのヒントになりました.ありがとうございます.
@tnoda よく分かりませんが、お役に立てたならうれしいです。また考えた結果について教えていただけるとうれしいです。
range
という名前の関数から想像できる動作として「開始と終了のふたつを指定して、その範囲の値を生成する」のは自然だとぼくは思います。ですので、開始・終了がはっきり見える (range from to)
が良い、なんてのはどうでしょう?
でも (range 0 1000)
と書いても 0 や 1000 を含むかどうかが分からないですね ([:-P
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
@kohyama @bouzuya 個人的な好みなんですが,私は @kohyama の
(range 1 1000)
方式のほうが素直だと思います.どちらがいいと思っているわけではなく,どちらでも問題ないと思っているのですが,なかなか面白い議論だと思い,いろいろ考えるきっかけになりました.ありがとうございます.今週中というわけにはいきませんが,近いうちに考えをまとめようと思います.