Diagonalization/ dupe for monads and tuples?

Carter Schonwald carter.schonwald at gmail.com
Thu Sep 17 13:33:40 UTC 2020


I’m not sure how fromMaybe relates here.  Could someone explain?

For the anti-categorical folks who dislike codiag or related names like
trace (in linear algebra trace is the sum of the diagonal of a matrix as a
scalar, an apt analogy I think), another name that I think is descriptive
is collapse


Names bandied about so far:

Dedup
Codiag
Fromeither

Things I mentioned above : trace and collapse

Zooming out though, this operation is equiv to “either id id”, so I don’t
really see how inventing a new name for this specific tiny snippet really
helps anyone.


On Thu, Sep 17, 2020 at 8:54 AM chessai <chessai1996 at gmail.com> wrote:

> My instinct about fromEither's type was the same as Carter's, and I had to
> remind myself of fromMaybe. I like the name fromEither overall. Seems to
> fit well with precedent and is straightforward enough.
>
> On Thu, Sep 17, 2020, 07:45 Oliver Charles <ollie at ocharles.org.uk> wrote:
>
>> You may wish to compare with fromMaybe then, which probably also doesn't
>> have the type you'd expect :) The type you have there is more like bifoldMap
>>
>> On Thu, 17 Sep 2020, at 1:42 PM, Carter Schonwald wrote:
>>
>> I’d expect fromEither to be
>> Either a b -> (a-> c )-> (b-> c) -> c
>>
>> Nothing about the name fromEither is suggestive of the Either a a type
>>
>> On Thu, Sep 17, 2020 at 3:45 AM Oliver Charles <ollie at ocharles.org.uk>
>> wrote:
>>
>>
>> Regardless of having a more abstract version, I'm +1 on Jon's suggestion,
>> and those names. fromEither is something I have reached for many many times
>> and been surprised it's not within arms reach.
>>
>> On Thu, 17 Sep 2020, at 7:16 AM, Jon Purdy wrote:
>>
>> I’m strongly for these:
>>
>> Data.Tuple.dup :: a → (a, a)
>>
>> Data.Either.fromEither :: Either a a → a
>>
>>
>> _______________________________________________
>>
>>
>> Libraries mailing list
>>
>>
>> Libraries at haskell.org
>>
>>
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>>
>>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/libraries/attachments/20200917/23851982/attachment.html>


More information about the Libraries mailing list