nullary tuple

『Introduction to Functional Programming using Haskell』 2.4 Tuplesからのメモ。



以下の場合、piは引数をとらずに戻り値のみを持っているのでこれは定数になります。

pi :: Double
pi = 3.14

定数を関数レベルに引き上げるためには、ユニット式というものを使用します。
ユニット式は()型を持ち、これは要素が0個のタプル(nullary tuple)と見なすことができます。

pi :: () -> Double
pi () = 3.14

定数を関数にすることによって、piをポイントフリースタイルで使用することができるようになります。

-- こう書く代わりに
(square . square) pi

-- こう書ける
square . square . pi