{"width":"100%","categories":["Haskell"],"author_name":"sirocco","height":"190","provider_name":"Hatena Blog","author_url":"https://blog.hatena.ne.jp/sirocco/","title":"fnc a b c = a + b + c \u3068  fnc = \\a -> \\b -> \\c -> a + b + c\u3000\u306f\u540c\u7b49","image_url":null,"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fsirocco.hatenadiary.org%2Fentry%2F20100423%2F1271991470\" title=\"fnc a b c = a + b + c \u3068  fnc = \\a -&gt; \\b -&gt; \\c -&gt; a + b + c\u3000\u306f\u540c\u7b49 - sirocco \u306e\u66f8\u3044\u3066\u3082\u3059\u3050\u306b\u5fd8\u308c\u308b\u30e1\u30e2\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","provider_url":"https://hatena.blog","published":"2010-04-23 11:57:50","blog_title":"sirocco \u306e\u66f8\u3044\u3066\u3082\u3059\u3050\u306b\u5fd8\u308c\u308b\u30e1\u30e2","blog_url":"https://sirocco.hatenadiary.org/","version":"1.0","url":"https://sirocco.hatenadiary.org/entry/20100423/1271991470","type":"rich","description":"Declaration vs. expression style 1.1 Declaration style filter1 :: (a -> Bool) -> [a] -> [a] filter1 p [] = [] filter1 p (x:xs) | p x = x : rest | otherwise = rest where rest = filter p xs 1.2 Expression style filter2 :: (a -> Bool) -> [a] -> [a] filter2 = \\p -> \\ xs -> case xs of [] -> [] (x:xs) -> \u2026"}