Haskell

Real World Haskell Chapter 3

色々モチベーションが低くて全然やっていなかったので再入門 そして、いきなり3章 1.リストの中の要素数を数える関数を書きなさい。標準関数lengthと同じ答えになるように。 2.型シグネチャ追加 myLength :: [a] -> Int myLength [] = 0 myLength (x:xs) = …

haskell-mode 2.5.1

http://d.hatena.ne.jp/n9d/20071216/1197794904を参照して haskell-mode 2.5.1を入れてみました。あと勝手に :main を実行してくれるのですが、個人的には要らないのでinf-haskell.el の inferior-haskell-run-command 部分を ;;(defvar inferior-haskell-r…

メモのメモのfoldl

色々メモ帳を浮気する駄目な性格なのでメモがなくならないうちにメモのメモfoldl foldl :: (a -> b -> a) -> a -> [b] -> a foldl f z [] = z foldl f z (x:xs) = foldl f (f z x) xs -- foldl f z [x1, x2, ..., xn] == (...((z `f` x1) `f` x2) `f`...) `f…

irrefutable Pattern(不可反駁パターン)とは…?

先日の勉強会で irrefutable patternが出てきたのでメモ。 仮引数のような必ず照合が成功するようなパターンのことを不可反駁 ( irrefutable )パターンといいます。反対に可反駁 ( refutable )パターンは照合が成功しない可能性があります。上であげた contr…