IT用語集 › プログラミング › fmap

fmap

プログラミング Svenska → 更新: 2026-10-21

Haskell の Functor 型クラスの関数。コンテナを開けずに、中の値に関数を適用する。fmap (+1) (Just 5) = Just 6。JavaScript なら [1,2,3].map(x => x+1) に相当する。

型シグネチャは fmap :: Functor f => (a -> b) -> f a -> f b。コンテナの種類を問わず動き、Maybe、リスト、Either、IO のいずれにも使える。演算子形式は <$> で、(+1) <$> [1,2,3] のように書く。

現代の言語にも同じパターンがある。Rust の Option::map、Result::map、Iterator::map、TypeScript の Array.prototype.map や Promise.then などだ。fmap には法則が二つあり、恒等性(fmap id = id)と合成(fmap (f . g) = fmap f . fmap g)である。後に続く Applicative や Monad の土台になっている。

← 用語集に戻る