Constraints on definition of `length` should be strengthened

Vladislav Zavialov vlad.z.4096 at gmail.com
Tue Apr 4 06:58:15 UTC 2017


You want tuples in mathematics and tuples in Haskell to be the same,
but they aren't. Call it an artifact of the kind system or a misnomer,
but that's the state of affairs. It's counter-intuitive and I don't
like it myself. My point is that if you want to fix this, it takes
more than to delete a few instances from 'base'. See my other message
in this thread about defining unbiased products in Haskell.

On Tue, Apr 4, 2017 at 9:50 AM, Sven Panne <svenpanne at gmail.com> wrote:
> 2017-04-04 8:15 GMT+02:00 Vladislav Zavialov <vlad.z.4096 at gmail.com>:
>>
>> > Tuples are unbiased cartesian products, full stop.
>>
>> This statement is not correct.
>
>
> According to probably all the math books in the world, the statement is
> correct, at least if we want to see tuples as cartesian products. But if we
> don't want to do that, the usage of the name "tuple" in Haskell and the
> (...,...) notation would be confusing misnomers.
>
>>
>> Look at their kind:
>>
>> > :k (,)
>> (,) :: * -> * -> *
>>
>> The same currying business is going on here. [...]
>
>
> That's an artifact of our kind system, not a consequence of the usual
> definition of cartesian products.
>
> _______________________________________________
> Libraries mailing list
> Libraries at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>


More information about the Libraries mailing list