Duncan Booth <[EMAIL PROTECTED]> writes: > If you think variable declarations should be required,
I don't think they should be required. I think there should optional declarations along with a compiler flag that checks for them if the user asks for it, like Perl has. > then you presumably want that to cover class attributes as well as > local and global variables. After all assigning to 'x.i' when you > meant 'x.j' is at least as bad as assigning to 'i' Yes, lots of people mistakenly use __slots__ for exactly that purpose. Maybe the function they think __slots__ is supposed to implement is a legitimate one, and having a correct way to do it is a good idea. > But unless you know the type of 'x', how do you know whether it > has attributes 'i' or 'j'? If the compiler knows (through declarations, type inference, or whatever) that x is a certain type of class instance, then it knows what attributes x has. -- http://mail.python.org/mailman/listinfo/python-list