[Haskell-cafe] Using lenses

Sebastiaan Visser haskell
Thu Oct 3 10:25:17 UTC 2013


I've used lenses to manipulate URIs represented as strings in a structured way, like:

  modify (port . iso parsePrintUri) (+10) "http://localhost:8070/index.html"

Of course using fclabels and not lens ;-)


On Oct 3, 2013, at 10:07 AM, Simon Peyton-Jones <simonpj at microsoft.com> wrote:

> (I sent this to ?libraries? but Kim-Ee suggested adding Caf?, where so many smart people hang out.)
> Friends
> Some of you will know that I?ve promised to give a talk about Edward?s lens library at the 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
> http://www.haskell.org/mailman/listinfo/libraries
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe

More information about the Haskell-Cafe mailing list