UNPKG

moy-fp

Version:
14 lines (11 loc) 275 B
import curry from '../Function/curry' /** * (s -> a) -> ((a, s) -> s) -> Lens s a * Lens s a = Functor f => (a -> f a) -> s -> f s */ const lens = curry( (getter, setter) => curry( (of, a) => of(getter(a)).map(focus => setter(focus, a)) ) ) export default lens