Applicative Functor
An applicative functor adds an ap operation on top of a functor, allowing a function inside a container to be applied to a value inside the container.
Purpose
An abstraction layer between functors and monads, supporting parallel composition of independent computations.
Mechanism
F<T> provides pure and ap: F<T→U> × F<T> → F<U>. Stronger than a functor (can compose functions inside containers) but weaker than a monad (later steps cannot depend on earlier results). Suited to composing independent effects, such as parallel validation.
Use cases
- Functional programming
- Parallel validation
- Effect composition