エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください
Twitterで共有ONにすると、次回以降このダイアログを飛ばしてTwitterに遷移します
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
Haskellで効率の良いコードを書くためにはいかに不要なサンクを潰すか、ということが重要だと言われてい... Haskellで効率の良いコードを書くためにはいかに不要なサンクを潰すか、ということが重要だと言われています。しかし、そもそもなぜサンクが増えると効率が悪くなるのでしょうか。 Haskellのメモリ確保は高速 まず、Haskellにおいてメモリの確保はどの程度コストがかかるものなのでしょうか。次のプログラムを使って確かめてみましょう。 {-# LANGUAGE BangPatterns #-} {-# OPTIONS_GHC "-ddump-simpl" #-} module Main2 where bench :: Int -> (a -> a) -> a -> a bench n f i = go n i where go 0 !i = i go k !i = go (k-1) (f i) {-# NOINLINE bench #-} main :: IO () main = prin