Pointfree スタイルで書こう Pointfree スタイルという Haskell のプログラミング手法を紹介します。 このエントリは Haskell Advent Calender jp 2010 のために書かれました / その他のAdvent Calender 去年のクリスマスはとうに過ぎてしまいましたが、どうかお許しください… 具体例 : 階乗計算 正の数字 n を与えられたときに 1 * 2 * 3 * ... * n を計算する関数 fact :: Integer -> Integer を考えます。 これは階乗(factorial)と呼ばれる計算です。 n が 0 や負だったときは fact n = 1 とします。 負の階乗は、数学的には 1 ではないのですが、ここでは許してください。 模範例は次のとおり: fact :: Integer -> Integer fact n