注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
以下の例はダメ main = putStrLn $ unlines $ map show $ f f = g 0 f g n (x:xs) = n : g (x + 1) xs (... 以下の例はダメ main = putStrLn $ unlines $ map show $ f f = g 0 f g n (x:xs) = n : g (x + 1) xs (x:xs) → ~(x:xs) なら OK main = putStrLn $ unlines $ map show $ f f = g 0 f g n ~(x:xs) = n : g (x + 1) xs その心は 一番最初に (x:xs) のパターン照合を行おうとした時点でまだ f のひとつ目の値が確定していない状態である。 つまり、パターン照合してはダメなのである。 g が実行されると決まった時点で x は n と確定する。 g が実行されるということが決まらなければ f のひとつ目の値は不定である。 つまり、このパターン照合は照合を行わない。照合を行わないで 第二引数 を head と tail に分ける
2006/12/08 リンク