About the implementation of del in Python 3
Marko Rauhamaa
marko at pacujo.net
Thu Jul 6 18:56:03 EDT 2017
Chris Angelico <rosuav at gmail.com>:
> On Fri, Jul 7, 2017 at 7:10 AM, Marko Rauhamaa <marko at pacujo.net> wrote:
>> Whether id() returns one such thing or not can't be discerned by a
>> Python program. What's more, for any compliant implementation of id(),
>> you can interpret the returned number as an address in some address
>> space (whether it's useful or not to interpret it that way).
>
> And I can interpret "Marko Rauhamaa" as a MIME-encoded IPv6 address.
> Does that mean it is one?
>
> 31:aae4::45ab:a16a:669a
>
> This is clearly your identity, and your address.
>
> [...]
>
> I've no idea what you're saying here with all that concatenation and
> stuff, but the truth is way simpler. If the two sides are the same
> object, 'is' returns true. Seriously, what's not clear?
Google finds a Dutch master's thesis from 2009 that gives formal
semantics to a subset of Python. I was interested in seeing how it
treated identity. Lo and behold:
The is operator determines whether its operands are the same object.
This is achieved by comparing the addresses of the operands.
<Θ, Γ, S|a[l] is ◦, a[r] >
⇒ <Θ, Γ, S , a[l] ≡ a[r]> (13.7)
<URL: http://gideon.smdng.nl/wp-content/uploads/thesis.pdf> [p. 61/91]
(just sayin')
Marko
More information about the Python-list
mailing list