Skip to content

Commit

Permalink
Fix function signatures in PEP 677 (#2243)
Browse files Browse the repository at this point in the history
The `flat_map` function is passing the function first in its calls, so the definition should reflect the same.
  • Loading branch information
tusharsadhwani authored Jan 17, 2022
1 parent d927d9d commit 9c8b47c
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions pep-0677.rst
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ like tab completion, static analysis tooling, and code review.

Consider the following untyped code::

def flat_map(l, func):
def flat_map(func, l):
out = []
for element in l:
out.extend(func(element))
Expand All @@ -58,8 +58,8 @@ We can add types to this example to detect the runtime error::
from typing import Callable

def flat_map(
l: list[int],
func: Callable[[int], list[int]]
func: Callable[[int], list[int]],
l: list[int]
) -> list[int]:
....

Expand Down Expand Up @@ -91,8 +91,8 @@ the benefits of static typing. For example, they might write this::
from typing import Callable

def flat_map(
l: list[int],
func: Callable[..., Any]
func: Callable[..., Any],
l: list[int]
) -> list[int]:
....

Expand All @@ -108,8 +108,8 @@ type checkers to find the bug.
With our proposal, the example looks like this::

def flat_map(
l: list[int],
func: (int) -> list[int],
l: list[int]
) -> list[int]:
out = []
for element in l:
Expand Down

0 comments on commit 9c8b47c

Please sign in to comment.