on master help sign in
Changelog, readme
4ed90a0Csongor Kiss
ChangeLog.md+3−1
@@ -1,5 +1,7 @@
1## 1.0.0.0
1## 1.0.0.0
2−- TODO
2+- Traversals (types, param, constraints)
3+- Prisms are now optimal too
4+- Monomorphic versions of lenses and prisms also included
3
5
4### Breaking API changes
6### Breaking API changes
5- `projectSub` now returns `Maybe sub` instead of `Either sup sub` (#21)
7- `projectSub` now returns `Maybe sub` instead of `Either sup sub` (#21)
README.md+11−4
@@ -266,7 +266,7 @@ types :: HasTypes s a => Traversal' s a
266[42,1,88,37,2]
266[42,1,88,37,2]
267```
267```
268
268
269−Note that this traversal is `deep': the subtrees are recursively traversed.
269+Note that this traversal is "deep": the subtrees are recursively traversed.
270
270
271### By parameter
271### By parameter
272As the above example shows, the `types` traversal is limited in that it cannot
272As the above example shows, the `types` traversal is limited in that it cannot
@@ -398,9 +398,16 @@ Duck 6
398```
398```
399
399
400# Performance
400# Performance
401−TODO.
401+The runtime characteristics of the derived optics is in most cases identical at
402−## Inspection testing
402+`-O1`, in some cases only slightly slower than the hand-written version. This
403−## Benchmarks
403+is thanks to GHC's optimiser eliminating the generic overhead.
404+
405+The
406+[inspection-testing](https://hackage.haskell.org/package/inspection-testing)
407+library is used to ensure (see [here](test/Spec.hs)) that everything gets
408+inlined away.
409+
410+TODO push benchmarks too
404# Contributors
411# Contributors
405
412
406+ [Matthew Pickering](https://github.com/mpickering)
413+ [Matthew Pickering](https://github.com/mpickering)