Allow Ellipsis as annotation for inferred type
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.8k
- Forks
- 302
- Avg merge
- 23h
- Merged PRs (30d)
- 8
Description
PEP 484 says that if an annotation is missing then the type assumed to be Any
def f(x) -> None:
reveal_type(x) # Revealed type is 'Any'
def g(x: int):
pass
reveal_type(g(1)) # Revealed type is 'Any'
However, it is not clear how to say to type checker that it should infer a missing type, rather than assume that it is Any. It was proposed by @ncoghlan to use Ellipsis for this purpose:
def f(x: ...) -> None:
...
def g(x: int) -> ...:
...
I am opening this issue, so that this idea will not be forgotten.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading PEP 484 and the examples in this issue; no implementation file or test is identified. Clarify the intended Ellipsis semantics and affected type-checker behavior before defining acceptance tests, since the issue records a proposal rather than a scoped change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- devtools
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100