This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author yselivanov
Recipients brett.cannon, larry, ncoghlan, r.david.murray, yselivanov
Date 2014-03-31.22:17:14
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1396304234.88.0.0458184458275.issue21117@psf.upfronthosting.co.za>
In-reply-to
Content
@Nick:

> Oops: already bound positional-*only* arguments should be hidden.
Hm, good catch. I'm not sure we currently do this. I'll check if this needs to be fixed (in 3.4.1 too).

> I'm +0 on new types to clean that up if necessary, but would prefer it if
we could just improve the translation to ordinary signature objects instead.

I'm not sure I understand what you mean by "translation to ordinary signature objects". Could you please elaborate on this?


@R. David:
> I believe it is a python invariant that a == b implies hash(a) == hash(b).  

I think that 'hash(a) == hash(b)' means that 'a == b' (strongly). But not reverse.  Or am I wrong?

> I don't see why the two signatures should be equal. I'm not even sure why the bound argument shows up in the signature of the partial.

Well, why shouldn't they be equal? They have same parameters, same default values. Quoting pep 362: """...two signatures are equal only when their corresponding parameters are equal and have the exact same names...""". Moreover, this behaviour is implemented since 3.3.
 
But their hashes shouldn't be equal, that's something I can agree on.
History
Date User Action Args
2014-03-31 22:17:14yselivanovsetrecipients: + yselivanov, brett.cannon, ncoghlan, larry, r.david.murray
2014-03-31 22:17:14yselivanovsetmessageid: <1396304234.88.0.0458184458275.issue21117@psf.upfronthosting.co.za>
2014-03-31 22:17:14yselivanovlinkissue21117 messages
2014-03-31 22:17:14yselivanovcreate