Описание тега monocle-scala
Monocle is a Lens library, or more generally an Optics library where Optics gather the concepts of Lens, Traversal, Optional, Prism and Iso. Monocle is strongly inspired by Haskell Lens.
Monocle is a Lens
library, or more generally an Optics library where Optics gather the concepts
of Lens
, Traversal
, Optional
, Prism
and Iso
. Monocle is strongly inspired by Haskell Lens.
What does it mean?
Optics are a set of purely functional abstractions to manipulate (get, set, modify) immutable objects. Optics compose between each other and particularly shine with nested objects.
Why do I need this?
Scala already provides getters and setters for case classes but modifying nested object is verbose which makes code difficult to understand and reason about.