[Haskell-cafe] Using lenses
Thu Oct 3 08:57:31 UTC 2013
An interesting use case is my time-lens library.
You can do things like
>>> modL minutes (+5) (TimeOfDay 16 57 13)
But one has to be somewhat lenient about the lens laws here.
* Simon Peyton-Jones <simonpj at microsoft.com> [2013-10-03 08:07:12+0000]
> (I sent this to 'libraries' but Kim-Ee suggested adding Caf?, where so many smart people hang out.)
> Some of you will know that I've promised to give a talk about Edward's lens library<http://hackage.haskell.org/package/lens> at the Haskell Exchange<http://skillsmatter.com/event/scala/haskell-exchange> in London next Wednesday (9th). I did this to give everyone (including me) a break from GHC hackery, and also to force me to learn about this lens voodoo that everyone is twittering about. Edward generously gave me quite a bit of one-to-one attention last week (my hair is still standing on end), but this message is to ask your help too.
> Specifically, I'd like to give some compelling use-cases. If you are using the lens library yourself, could you spare a few minutes to tell me how you are using it? I expect to cover Lens and Traversal but not Prism.
> The use-case everyone starts with is nested records, but I'd like to go beyond that. The next levels seem to be:
> ? Lenses as views of data that isn't "really there" e.g. regarding a record with rectangular coordinates as having polar coordinates too.
> ? Lenses and Traversals that focus on elements of finite maps (Control.Lens.At)
> What else? I'm sure you are using them in all sorts of cool ways that I would never think of, and I'd love to know.
> Please don't tell me anything secret! To give everyone the benefit I may just concatenate all the replies and send to you all, so please say if you don't want me to do that with yours.
> And don't burn too many cycles on this...I don't want to waste your time, and I can always get back to you if I can't understand what you say. Sooner is better than later...Weds is coming.
> Simon "Edward's prophet" PJ
> Libraries mailing list
> Libraries at haskell.org
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 836 bytes
Desc: Digital signature
More information about the Haskell-Cafe