
On 6 Jan 2008, at 3:55 AM, Yitzchak Gale wrote:
I wrote:
What goes wrong with finite coproducts? The obvious thing to do would be to take the disjoint union of the sets representing the types, identifying the copies of _|_.
Jonathan Cast wrote:
This isn't a coproduct. If we have f x = 1 and g y = 2, then there should exist a function h such that h . Left = f and h . Right = g... But by your rule, Left undefined = Right undefined... Which is a contradiction...
OK, thanks.
Unless, of course, your require your functions to be strict --- then both f and g above become illegal, and repairing them removes the problem.
You don't have to make them illegal - just not part of your notion of "coproduct".
We're talking past each other --- what is the distinction you are making? jcc