[Aldor-l] [Aldor-combinat-devel] parametric types and instantiation (was: Re: Should this "parser" work?)

Martin Rubey martin.rubey at univie.ac.at
Thu Oct 26 08:29:16 EDT 2006


Dear Christian et al,

"Christian Aistleitner" <tmgisi at gmx.at> writes:

> The main problem (to me) is that Martins seems to differentiate between  
> “Atom" and “instance of Atom”, which can be seen by the lines
>    00003000: Atom
>    00003001: an instance of Atom
> of the message at
> http://www.aldor.org/pipermail/aldor-l/2006-October/000502.html

and

> If I am correct, you follow Martin's opinion, saying besides  
> MachineInteger, there is also an “instance of the domain MachineInteger”.


I would like to stress that I do not "believe" that this is the case. Rather, I
believed that it would possibly the case.

As I stated in my last post (where I gave the output of Domain pretend Pointer
for several domains), I' m now pretty sure that it is not the case. Rather, at
least in that grammar function, it seems that a domain returning function is
evaluated only at (i.e., not before) the time it is actually used. Which makes
perfect sense.

Suppose the code reads

1     somefun(...):... == { some code;
2                           f(args) add;
3     }
4     
5     more code;
6     x == somefun(myargs);
7     still more code;
8     op$x;

then "some code" is evaluated at time 6 but "f(args)" is evaluated only at time
8. Furthermore, for the evaluation of "f(args)", the state of time 8 is
relevant. I.e., if args is a globally defined list, which contents is modified
at time 7, these modifications are seen when evaluating "f(args)".

Martin





More information about the Aldor-l mailing list