On 11/15/2008 11:09 AM, Martin Rubey wrote: > Ralf Hemmecke <[EMAIL PROTECTED]> writes: > >>> But I hesitate to write >>> UnivariatePolynomial(var, R) == with Join(CoercibleTo SUP R, >>> CoercibleTo Polynomial R, >>> CoercibleTo DMP([var], R), >>> CoercibleTo MPOLY([var], R) ...) >>> This doesn't look right. >> Doesn't seem to look right. But how else would you want to export >> >> coerce: % -> X >> >> for any of the replacements for X from above? They must statically be given >> at >> compile time or (if "extend" where available) could be added later (but also >> at >> compile time). > > Yes, *exactly* this was my question. And since I think it's a language > problem, I also sent it to aldor-l.
What about putting toHere: (X: UPOLYC) -> X -> % into the category of UPOLYC and then toHere(X: UPOLYC)(x: X): % == coerce(x)$UPOLYCoerce(X, %) as default implementation? It's not exactly like a simple coerce, but you get rid of explicitly stating all the CoercibleTo X exports. Ralf ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ open-axiom-devel mailing list open-axiom-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/open-axiom-devel