- 【Lisp】プログラミング言語 Clojure #3【JVM】
536 :デフォルトの名無しさん[sage]:2014/09/02(火) 18:42:46.09 ID:/dSRrT7Z - >>533
悪いことは言わない clojureはプロトタイプまでにとどめておけ どうしてもというなら、せめてlispでやるべき 長時間多アクセスのclojureサーバは、再帰の最適化がヘボいからコケるぞ
|
- 関数型プログラミング言語Haskell Part26
129 :デフォルトの名無しさん[sage]:2014/09/02(火) 19:31:12.41 ID:/dSRrT7Z - すみません
だれか lisp の gensym みたいな関数かそれの代替物を教えてください 呼ばれるたびに確実に異なる数を返す関数です
|
- 【Lisp】プログラミング言語 Clojure #3【JVM】
541 :デフォルトの名無しさん[sage]:2014/09/02(火) 21:33:42.88 ID:/dSRrT7Z - 1万行のコードの中から再帰を削除しなくてもコケない選択肢と、削除しないとコケる選択肢
(この世で最も信頼できない3ヶ月以上時間を隔てた) 俺のコードがヘボくてもコケない選択肢と、ヘボいとコケる選択肢 なぜあえて金のかかる場面で冒険をしたがるのか…
|
- 関数型プログラミング言語Haskell Part26
134 :デフォルトの名無しさん[sage]:2014/09/02(火) 21:46:06.47 ID:/dSRrT7Z - >>131 >>133
gen = mkSplitUniqSupply 'a' newI :: IO UniqSupply -> IO Int newI g = liftM (getKey.uniqFromSupply) g で newI gen を呼ぶ度に再帰の最中でも異なる数が出るようになりました IOがくっついてるのが面倒臭くなりましたが
|
- 【Lisp】プログラミング言語 Clojure #3【JVM】
544 :デフォルトの名無しさん[sage]:2014/09/02(火) 22:12:58.16 ID:/dSRrT7Z - >>542
WEBサーバでclojureで作ったサーブレット追加してサーバが落ちた経験一覧 ・普通に気付かずにヘボ再帰を書いてる -> 表現が素直だから目の前にあっても気付かない ・ページの文字列連結で落ちた -> 差分リストに変更 ・よく見たらletfnで再帰になってた -> 見つけるのに4日かかった ・デバッグ情報追加したら落ちた -> デバッグ情報の持ち回りに超頭使う ・clojureがバージョンアップして落ちた -> 原因不明、関数名の扱いの変更が怪しい ・その他、コードの入れ替えに落とす必要あり
|
- 【Lisp】プログラミング言語 Clojure #3【JVM】
546 :デフォルトの名無しさん[sage]:2014/09/02(火) 22:35:51.34 ID:/dSRrT7Z - >>545
SICP和田本から計算機言語の世界に来た人にとってはもの凄く関係あると思われる
|
- 【Lisp】プログラミング言語 Clojure #3【JVM】
552 :デフォルトの名無しさん[sage]:2014/09/02(火) 23:28:49.29 ID:/dSRrT7Z - >>547
今調べたら関数名の束縛方法が変わってて再帰状態のトレースができなくなってた
|
- 【Lisp】プログラミング言語 Clojure #3【JVM】
553 :デフォルトの名無しさん[sage]:2014/09/02(火) 23:32:18.63 ID:/dSRrT7Z - >>549
負荷試験するたびに、「lispならサクサク行くのにィィィィィ」とうなることうけあい
|