[EMAIL PROTECTED] wrote: > The main reason (at least for me) is that there's simply too much > "magic" in it. Why does the expression left of the '.' get promoted to > the first parameter?
One of the reasons I like Lua is because it doesn't do this, instead using the : operator to designate method-style calls. eg. a:foo(b, c) -- looks up foo within a, and calls it with (a, b, c) as parameters a.foo(b, c) -- looks up foo within a, and calls it with (b,c) as parameters This means there doesn't need to be a distinction between methods and functions, just a different operator to treat a function as if it was a method. When I started out in Python I figured that I could just assign functions to objects and treat them then as if they were methods, as I would in Lua, but quickly learned that it wasn't that simple. -- Ben Sizer -- http://mail.python.org/mailman/listinfo/python-list