On 11/19/2008 10:22 PM, Bill Page wrote:
> On Wed, Nov 19, 2008 at 3:30 PM, Ralf Hemmecke wrote:
>> In some experimental code, I had myself some need of 'is' in Aldor.
>> Since there is no 'is' I used some workaround.
>>
>> Here I don't need it for selecting special cases, but rather to check
>> whether the domains are identical so that I could safely 'pretend'
>> that one value 'y' of type Y is also of type X.
>>
>> Instead of the line
>>                 if List X has ListType Y then {
>> you should read
>>                 if X is Y then {
>> .
> 
> I do not understand. If two domains are identical than why is there
> any need to "pretend" that they are the same?

You removed too much from my mail (at least if I understand your 
question correctly).

     equals?(X: LT, x: X)(Y: LT, y: Y): Boolean == {
                 if List X has ListType Y then {
                         (x = y pretend X)
                 } else {
                         false;
                 }
     }

equals? works on 4 things. X and Y are domains which both belong to 
category LT. Now, my construction is a workaround for the missing 'is' 
and therefore the compiler (after having interpreted 'List X has 
ListType Y') is not (yet) smart enough to figure out that X and Y are 
identical and in the 'then' branch y could actually equally be 
considered to be of type X (without 'pretend').

If 'is' were part of the (Aldor-)language, then of course, inside the 
'then' branch the compiler should not require 'pretend', i.e. 'x=y' 
should just work.

But we speak in dreams here. The only thing mentioned about 'is' in the 
AUG is that it is a reserved keyword.

Ralf

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/fricas-devel?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to