[Haskell-cafe] Gluing pipes
Matt Hellige
matt at immute.net
Thu Dec 4 13:21:03 EST 2008
On Thu, Dec 4, 2008 at 12:07 PM, Matt Hellige <matt at immute.net> wrote:
>
> Finally, there's a further disadvantage to both of these approaches:
> it seems to me that neither approach allows us to "cross pipes". For
> instance, we can't define flip using these techniques, or any "deep
> flip":
> \ x y z -> f x z y
> Is it true in general that operads cannot express pipe-crossing
> compositions? Or is it just a shortcoming of this particular
> implementation? Of course this is getting farther afield, and I don't
> believe that my approach can express this either.
>
This is not exactly true. It's possible in my scheme to express a deep
flip, as long as it's the last thing you want to do:
\ f x y z -> f x z y == id ~> flip
It's not clear to me whether your operad class can express this (or
whether operads in general can express this), or whether my scheme can
express more general permutations of arguments.
Matt
More information about the Haskell-Cafe
mailing list