[issue25087] Type variable substitution in type instances
Stefan Krah
report at bugs.python.org
Sun Sep 13 15:52:18 CEST 2015
New submission from Stefan Krah:
If a type scheme is instantiated, should the type variables in the
class body be substituted? This is an example (typed by hand on
a locked down Windows machine, may contain errors):
alpha = TypeVar('alpha')
beta = TypeVar('beta')
class ABTuple(Generic[alpha, beta]):
def __init__(self, a : alpha, b : beta):
self.value = (a, b)
get_type_hints(ABTuple.__init__)
==> {'b': ~beta, 'a': ~alpha}
IntIntTuple = ABTuple[int, int]
IntIntTuple
==> __main__.ABTuple[int, int]
get_type_hints(IntIntTuple.__init__)
{'b': ~beta, 'a': ~alpha}
^^^^^^ ^^^^^^
Since the type has been specialized, these should ideally be 'int'.
----------
components: Interpreter Core
messages: 250565
nosy: gvanrossum, skrah
priority: normal
severity: normal
status: open
title: Type variable substitution in type instances
type: behavior
versions: Python 3.5
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue25087>
_______________________________________
More information about the Python-bugs-list
mailing list