Skip to content
master
Go to file
Code

Latest commit

* Add type synonym for affine traversal

* Formulate Index in terms of AffineTraversal'

Sorry for the ugly duplication with At, maybe we want to put them in the same module? Then index i = at i <<< _Just

* Add `AffineTraversal` and `Stall`

* Fix build

* Re-export Stall

* Fix the Index instance of Set

* Really fix the Index instance of Set

* Fix AffineTraversal intro text.

Co-authored-by: Nicholas Scheel <monoidmusician@gmail.com>
c869e57

Git stats

Files

Permalink
Failed to load latest commit information.

README.md

purescript-profunctor-lenses

Latest release Build status Pursuit Maintainer: garyb Maintainer: thomashoneyman

Pure profunctor lenses. A mechanism for updating, viewing, and setting values within nested data structures. As in:

> structure = Tuple (Tuple (Tuple "hi!" 3) 2) 1

> import Data.Lens
> _leftmost = _1 <<< _1 <<< _1

> view _leftmost structure
"hi!"

> set _leftmost "Bye!" structure 
(Tuple (Tuple (Tuple "Bye!" 3) 2) 1)

> over _leftmost String.toUpper structure
(Tuple (Tuple (Tuple "HI!" 3) 2) 1)

Installation

# with Bower
bower install purescript-profunctor-lenses

# with Spago
spago install profunctor-lenses

Documentation

Module documentation is published on Pursuit. You can find examples in the tests and the examples directory.

There are other in-depth materials for learning about profunctor optics and lenses in PureScript.

Contributing

Read the contribution guidelines to get started and see helpful related resources.

You can’t perform that action at this time.