Haskell:
コードを関数に整理する

方法:

以下は、Haskellで関数を書いて使う方法です:

-- 二つの数を足す単純な関数を定義
addNumbers :: Int -> Int -> Int
addNumbers x y = x + y

-- 関数を使う
main = print (addNumbers 3 5)

出力:

8

高階関数を作成することもできます:

-- 関数を取り、何かに対して二回適用する
applyTwice :: (a -> a) -> a -> a
applyTwice f x = f (f x)

-- 無名関数を使ってapplyTwiceを使用する
main = print (applyTwice (*2) 5)

出力:

20

ディープダイブ

純粋関数型言語であるHaskellは、関数を第一級市民として扱います。歴史的には、計算の基礎的なフレームワークであるラムダ計算に根ざしています。関数が命令型言語で命令のシーケンスであるのに対して、Haskellでは、関数はデータ間の関係を記述する式です。

再利用のために生の関数を書く以外の選択肢もあります。ポリモーフィズムに型クラスを使用することや、関連する関数をグループ化するためにモジュールを活用することを考えてみてください。Haskellの遅延評価も関数の実装に影響を与えます。関数は結果が必要になるまで評価されないため、パフォーマンスの考慮事項に影響を与える可能性があります。

関連情報