3 ms·
> But otherwise, the notion that Hask is not a category is nothing new. I'm not entirely sure. Read the official Haskell page on the subject: https://wiki.has
by TAForObvReasons 10y ago
> But otherwise, the notion that Hask is not a category is nothing new.
I'm not entirely sure. Read the official Haskell page on the subject: https://wiki.haskell.org/Hask https://wiki.haskell.org/Hask
> In order to make Hask a category, we define two functions f and g as the same morphism if f x = g x for all x. Thus undef1 and undef2 are different values, but the same morphism in Hask.
If I understand the passage correctly, they are defining the morphism in a way that makes Hask a category. I think the author of the original post interpreted it the same way.
- dietrichepp 10y agoIt seems like the author isn't interpreting it the same way at all, because "(undefined . id)" would be the same morphism as "undefined" by the criteria on the wiki page, and then the author says that they must be different because you get different behavior when you pass them to "seq", which is a radically different set of criteria. Which is exactly what is addressed by the wiki page... you get different behavior when you use "seq" on two different things which are the same morphism. The wiki page even uses almost the same example.