Marshall wrote: > > However if the mutable types are not first class, then there > is no way to have the aliasing. Thus, if we do not have pointers > or objects or identity but retain mutability, there is no aliasing > problem.
Yes, technically you are right. But this makes a pretty weak notion of mutability. All stateful data structures had to stay within their lexical scope, and could never be passed to a function. For example, this essentially precludes object-oriented programming, because you could not have objects with state (the alternative, second class objects, would be even less "objective"). Generally, second-classness is an ad-hoc restriction that can work around all kinds of problems, but rarely with satisfactory results. So I would tend to say that this is not an overly interesting point in the design space. But YMMV. >>In other words, pointers are essentially just an *aspect* of mutability >>in lower-level languages. > > Again, I disagree: it is posible to have mutability without > pointers/identity/objects. OK, if you prefer: it is an aspect of first-class mutability - which is present in almost all imperative languages I know. :-) - Andreas -- Andreas Rossberg, [EMAIL PROTECTED] -- http://mail.python.org/mailman/listinfo/python-list