Waldek Hebisch <[EMAIL PROTECTED]> writes:

> Bill Page wrote:
> > You are right that I did not state this properly. Of course we can
> > evaluate expressions (including functions) that return domains
> > and categories. What I was trying to say is that domains in Spad
> > and Aldor are immutable during run-time. Once constructed their
> > "value" is constant and can not be changed. For example we
> > can not insert or remove anything in the list of exports or even
> > replace one exported function with another during the execution
> > of the program. This is possible in Python.
> > 
> > Note: I am not talking about the post facto library extension feature
> > in Aldor. 'extend' is a compile-time operation.
> 
> I want comment about Alder, but in current Axiom runtime domains are
> mutable.  In fact I think that ability to redefine domain at runtime
> was an important design goal (otherwise a sigificant part of Axiom
> runtime activities would be useless).
> 
> I think that biggest problem in impementing 'extend' is to provide
> sane behaviour during redefinition.

although Domains may be mutable in some sense in SPAD and Aldor (since we can
access and modify their "state") I think that "the way things are meant to be
done in Axiom/SPAD/Aldor" is to create new domains, instead of modifying old
ones. Since we have "dependent types", this can be done in an extremely
flexible manner, as the example "Interpret" shows, which takes a string and
yields a domain.

Martin



_______________________________________________
Axiom-developer mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/axiom-developer

Reply via email to