
Am Freitag, 28. März 2008 05:21 schrieb Dan Doel:
[…]
However, obviously, this depends on overlapping instances (if there's some other way, I'd be happy to know; if type inequality contexts are available, I wasn't able to find them), and I've heard that type families don't play well with overlap. Does that not apply to data families? Will this construction still work in 6.10 and beyond?
Also, this doesn't seem to be a suitable basis for Dynamic. Trying to extend the GADT solution presented resulted in errors unless incoherent instances were turned on (clearly not a good sign), and even then, it didn't actually work. Is it possible to do better, and come away with something that will actually work for Dynamic, and be sound?
I don’t know exactly whether this helps here but with open type families you will be able to define a type-level type equality decision. See the mail at http://www.haskell.org/pipermail/glasgow-haskell-users/2007-October/013271.h....
[…]
Best wishes, Wolfgang