On Mon, 29 Dec 2008, Martijn van Steenbergen wrote:

Conal Elliott wrote:
If you think of f (here f=not) as an "semantic editor" (transformer) of values, then 'result', 'first', and 'second' are "semantic editor combinators", which can be composed together arbitrarily. See http://conal.net/blog/semantic-editor-combinators .

I recently found out Henning and Luke's Data.Accessor[1], and your editor combinators and their accessors seem very much related. Was one inspired by the other?

Martijn.

Well spotted - thank you for pointing out this connection! Interestingly since Conal's approach is motivated differently, he also included functions. Those are missing in data-accessor, although Accessor.Container is close to it. The main difference is, that Conal restricts to 'modify' functions, and does not support 'get' like Accessors do. You can 'set' and 'modify' all function values (or all container elements) simultaneously, but you can only 'get' one at a time. Thus an Accessor could only access a single function value, but not all of them simultaneously.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to