I did not translate you code.

I wonder why

 > getit(T: Category, L: Tuple T, i: MachineInteger): T == add {
 >         import from Tuple T;
 >         element(L, i);
 > }

compiles.

add {...} is an anonymous domain, that exports *nothing*.
T is a category.
So if that code compiles, I would consider it a bug in the compiler, 
since surely the types don't match. T is one type-level higher.

 > -- note that the following results in an "export not found":
 > -- if getit(OutputType, t, 1) has OutputType
 > -- then stdout << p << newline;

I would say, that is OK no matter whether you consider 
getit(OutputType,t,1) to be equivalent to OutputType or whether it is a 
domain that exports nothing. We all know that

   if OutputType has OutputType then ...

does not work, since the argument before "has" has to be a domain, not a 
category.

Ralf



-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Aldor-combinat-devel mailing list
Aldor-combinat-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/aldor-combinat-devel

Reply via email to