curry,(&&&),(|||)の型が,指数法則と対応している
3つの指数法則
指数法則を数式から型に書き換える
数式 | 型 |
---|---|
b -> a | |
Either a b | |
(a, b) |
この表の通りに指数法則を書き換えると,こうなります。
- (a, b) -> c = a -> (b -> c)
- (a -> b, a -> c) = a -> (b, c)
- (a -> c, b -> c) = (Either a b -> c)
これらは,curry,(&&&),(|||)の型とよく似ています。
関数 | 型 |
---|---|
curry | (a, b) -> c -> (a -> b -> c) |
(&&&) | (a -> b) -> (a -> c) -> (a -> (b, c)) |
(|||) | (a -> c) -> (b -> c) -> (Either a b -> c) |