Record is mutable, Cross is not.
Yes, that is my point. We can treat many things as convention,
including mutability. The question is this somehow essential to the
language?
Mutable/immutable is like non-functional/functional. I was once told
that due to the fact that Cross is immutable, the compiler can apply
certain optimizations. If all this where just a convention, then such
optimizations cannot be done without perhaps changing the semantics of
the program.
So just to be clear: Are you suggesting that Rep is not an essential
part of the SPAD language?
Right.
Do you also remember that Stephen Watt was thinking about %?
I think it had to do with defining one domain inside another. Something like
add {
A==>%
B==>%
Rep == String
D: with {foo: A -> B} == add {Rep == Integer;
foo(x:A):B==per(2 * rep x)
}
foo(x: %): % ==
If A=B=% then it's probably always referring to D. Is there any way that
inside D I can refer to the % of the outer (anonymous) add domein?
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.