On Wed, 16 Mar 2005 16:35:57 -0600, Mike Meyer wrote: > The real problem is that newbies won't know which features are "meta" > features best left to experts, and which features are ok for everyday > programmers to use. > > We recently saw a thread (couldn't find it in google groups) where > some was trying to write decorators that would add a variable to a > functions local namespace. When they actually stated the problem, it > was a problem trivially solved by inheriting behavior, and that OO > solution was what the OP finally adopted. But most of a week got > wasted chasing a "solution" that should never have been investigated > in the first place.
This isn't a new problem, and I'm not convinced it even makes it worse. We (speaking broadly) have had to ask "No, what is it you are trying to *do*?" for a long time. Whether the 'newbie' is reaching for decorators to add a variable, trying to use lambdas to print, or trying to use XML-RPC to make calls to local functions, the newbie who is going to ask "How do I do this wrong thing?" isn't going to be affected either way by the addition or removal of metaclasses, or much of anything else. Is this arguable? Yes, absolutely, and I think none of us have the data to prove this one way or the other. But a priori it is not obvious that adding a few more possible mistakes to the already effectively infinite set of them is necessary going to trap anybody who wasn't going to get trapped on something else. -- http://mail.python.org/mailman/listinfo/python-list