[issue14003] __self__ on built-in functions is not as documented

2020-11-07 Thread Irit Katriel


Change by Irit Katriel :


--
versions: +Python 3.10, Python 3.8, Python 3.9 -Python 3.2, Python 3.3

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2017-03-20 Thread Jim Fasarakis-Hilliard

Changes by Jim Fasarakis-Hilliard :


--
nosy: +Jim Fasarakis-Hilliard

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2015-06-07 Thread eryksun

eryksun added the comment:

In Python 2 [Py_InitModule4][1] optionally allows setting __self__ on module 
functions, but no module in the standard library actually uses this. It's 
always None. This is no longer optional with Python 3's [PyModule_Create][2]. 
Built-in module functions instantiated the normal way can be considered as 
methods of the module in which they're defined. However, some modules may 
specially instantiate functions for which __self__ is None, such as 
codecs.strict_errors.

 codecs.strict_errors.__self__ is None
True

[1]: https://docs.python.org/2/c-api/allocation.html#c.Py_InitModule4
[2]: https://docs.python.org/3/c-api/module.html#c.PyModule_Create

--
nosy: +eryksun

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14003
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2015-06-07 Thread Dmitry Kazakov

Changes by Dmitry Kazakov jsb...@gmail.com:


--
nosy: +vlth

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14003
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2012-10-01 Thread Ezio Melotti

Changes by Ezio Melotti ezio.melo...@gmail.com:


--
stage:  - needs patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14003
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2012-02-18 Thread Ezio Melotti

Changes by Ezio Melotti ezio.melo...@gmail.com:


--
nosy: +ezio.melotti

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14003
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2012-02-18 Thread Arfrever Frehtes Taifersar Arahesis

Changes by Arfrever Frehtes Taifersar Arahesis arfrever@gmail.com:


--
nosy: +Arfrever

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14003
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2012-02-17 Thread Terry J. Reedy

Terry J. Reedy tjre...@udel.edu added the comment:

Python-coded functions do not have .__self__.
 def f(): pass

 f.__self__
...
AttributeError: 'function' object has no attribute '__self__'

Unbound builtin methods, which are simply builtins functions attached to a 
class, do not have .__self__
 list.__len__.__self__
...
AttributeError: 'wrapper_descriptor' object has no attribute '__self__'

So it makes no sense to me that builtin non-method functions should have this 
attribute.

Built-in methods 
This is really a different disguise of a built-in function, this time 
containing an object passed to the C function as an implicit extra argument. An 
example of a built-in method is alist.append(), assuming alist is a list 
object. In this case, the special read-only attribute __self__ is set to the 
object denoted by alist.

should have 'method' replaced with 'instance method' as it is only talking 
about instance methods, as the term is used in the rest of the section. Or this 
section should be deleted as it duplicates the previous Instance Method 
section. Or it should be revised to actually discuss unbound builtin methods.

--
nosy: +terry.reedy

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14003
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2012-02-17 Thread Matt Joiner

Changes by Matt Joiner anacro...@gmail.com:


--
nosy: +anacrolix

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14003
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2012-02-17 Thread Éric Araujo

Éric Araujo mer...@netwok.org added the comment:

I think that functions in C modules are implemented as methods of module 
objects, which would explain why len.__self__ is builtins.

--
nosy: +eric.araujo

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14003
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2012-02-13 Thread Роман Донченко

New submission from Роман Донченко dxdra...@yandex.ru:

The language reference says this in section 3.2:
 
~
Built-in functions
 
A built-in function object is a wrapper around a C function. Examples of 
built-in functions are len() and math.sin() ... Special read-only attributes: 
... __self__ is set to None (but see the next item) 
~

That is not the case:

ActivePython 3.2.2.3 (ActiveState Software Inc.) based on
Python 3.2.2 (default, Sep  8 2011, 10:55:13) [MSC v.1500 64 bit (AMD64)]  
on win32
Type help, copyright, credits or license for more information.
 len.__self__
module 'builtins' (built-in)
 open.__self__
module 'io' (built-in)
 import math
 math.sin.__self__
module 'math' (built-in)

--
assignee: docs@python
components: Documentation
messages: 153287
nosy: SpecLad, docs@python
priority: normal
severity: normal
status: open
title: __self__ on built-in functions is not as documented
type: behavior
versions: Python 3.2

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14003
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2012-02-13 Thread R. David Murray

R. David Murray rdmur...@bitdance.com added the comment:

It looks like this changed between 2.x and 3.x but the docs were not updated.  
None makes more sense than the module as __self__, though, so perhaps it is 
actually a bug.  Then, again, since Python functions don't have a __self__, the 
__self__ of built-in functions seems like an anomaly to begin with...

--
nosy: +r.david.murray
versions: +Python 3.3

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14003
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14003] __self__ on built-in functions is not as documented

2012-02-13 Thread Michael Foord

Michael Foord mich...@voidspace.org.uk added the comment:

It's nicer for introspection if __self__ is None on builtin functions. But 
fixing the docs is easier (and more backwards compatible).

--
nosy: +michael.foord

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14003
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com