Antoon Pardon <antoon.par...@vub.be>: > the semantics of an assignment depends on the language
I've only seen one kind of assignment in the general-purpose programming languages I know, maybe with the exception of Prolog and Rust. So the assignment is the same everywhere, only the evaluation model varies. In classic C, expressions evaluate to integers, double-precision floating-point numbers or pointers. In Python, all expressions evaluate pointers. For example, in C, the expression 1 + 2 takes two integers and produces a third one. By contrast, the same Python expression takes two pointers and produces a third one (while possibly generating a number of objects in the process). Analogously, C lvalues can store various types of value. In Python, all "lvalues" store a pointer. I haven't wanted to use the word "value" above because it is ambiguous and confusing in the context of this discussion. Marko -- https://mail.python.org/mailman/listinfo/python-list