On Thu, 02 Feb 2006 19:27:55 -0600 DH <[EMAIL PROTECTED]> wrote: > But I think most people who don't like the extraneous > 'self' in python just consider it a minor inconvenience > and don't even notice it after using python for a while.
After messing around with Javascript (many magical variables that suddenly show up in your namespaces!), I began to *seriously* appreciate Python's design. Having self as an explicit parameter is beautiful self-documenting design. The convention that the self parameter is always "self" with 4 characters instead of, say, __ or _ or s can get annoying, but of course, you are actually free to break this convention. The advantage to keeping it, of course, is that anybody can google "python self" and immediately get an explanation of what it is, whereas googling for "python _" is less likely to be helpful. In fact, I think this ease of finding documentation is one of the reasons why Python's heavy use of keywords (rather than symbolic operators) is so useful. Recent additions like "list comprehensions" and "generators" create a lot of newbie confusion not least because newbies simply don't know that [x for x in mylist] is *called* a "list comprehension" (if they knew what it was called, they'd answer the question for themselves). They see the code and don't have any idea what it is. It adds to the basic or core knowledge that you have to wade through before you can say you "know Python" even at the trivial level. One of the things that attracted me to Python (at v1.5.2) was the fact that the core language was so small and simple that I could learn it in just a few days. The more syntactical sugar added, the less that will be true, though. I don't think we've busted the system yet, but I think there's some reason for caution against making things any *more* complicated. I still see "newbie-friendliness" as a MAJOR plus for Python -- it increases the chance that users of your software will become contributors. I mean, even Perl was probably pretty simple in the beginning. ;-) -- Terry Hancock ([EMAIL PROTECTED]) Anansi Spaceworks http://www.AnansiSpaceworks.com -- http://mail.python.org/mailman/listinfo/python-list