[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 09/01 00:11 / Filesize : 268 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

CommonLisp Scheme Part13



217 名前:209 mailto:sage [2005/06/03(金) 20:23:37 ]
いろいろな方にベンチを実行していただき,ありがとうございます.大変参考
になりました.

ところで,おまけとして,ラムダ式による遅延評価版を書いてみました.
(参考)www.shiro.dreamhost.com/scheme/wiliki/wiliki2.cgi?Scheme%3a%a4%bf%a4%e9%a4%a4%a4%de%a4%ef%a4%b7%a4%d9%a4%f3%a4%c1

;;;竹内関数 aka たらいまわしべんち (or 'Common 'Emacs) Lisp
;;;遅延評価版
(defun tarai (x y z)
(if (<= (funcall x) (funcall y))
(funcall y)
(tarai (lambda () (tarai (lambda () (- (funcall x) 1)) y z))
(lambda () (tarai (lambda () (- (funcall y) 1)) z x))
(lambda () (tarai (lambda () (- (funcall z) 1)) x y)))))

こちらだと,引数が12 だとあっという間に終わってしまいますので,数字を
変えました.

(tarai (lambda () 192) (lambda () 96) (lambda () 0)) => 192

先ほどの条件で,xyzzy だと13秒程度でした.いささか極端な例とは言え,遅
延評価のありがたみを痛感します.







[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<268KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef