Hello,

> This would be a great question to ask Guido (inventor of Python)--we
> get it from there.

a similar question is answered in the Python FAQ:
http://www.python.org/doc/faq/general/#why-does-python-use-methods-for-some-functionality-e-g-list-index-but-functions-for-other-e-g-len-list

"4.7   Why does Python use methods for some functionality (e.g.
list.index()) but functions for other (e.g. len(list))?

The major reason is history. Functions were used for those operations
that were generic for a group of types and which were intended to work
even for objects that didn't have methods at all (e.g. tuples). It is
also convenient to have a function that can readily be applied to an
amorphous collection of objects when you use the functional features
of Python (map(), apply() et al).
In fact, implementing len(), max(), min() as a built-in function is
actually less code than implementing them as methods for each type.
One can quibble about individual cases but it's a part of Python, and
it's too late to make such fundamental changes now. The functions have
to remain to avoid massive code breakage.
Note that for string operations Python has moved from external
functions (the string module) to methods. However, len() is still a
function."

Lars
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to