Hi Tobias, A couple of questions about the DLS 2020 paper.
1. Why do you use the term "validate" rather than "test" for the process of selecting a match?
It seems to me, that this is a test, not a validation, as no exception is raised if a case doesn't match.
2. Is the error in the ast matching example, an intentional "simplification" or just an oversight?
The example: ``` def simplify(node): match node: case BinOp(Num(left), '+', Num(right)): return Num(left + right) case BinOp(left, '+' | '-', Num(0)): return simplify(left) case UnaryOp('-', UnaryOp('-', item)): return simplify(item) case _: return node ``` is wrong. The correct version is ``` def simplify(node): match node: case BinOp(Num(left), Add(), Num(right)): return Num(left + right) case BinOp(left, Add() | Sub(), Num(0)): return simplify(left) case UnaryOp(USub(), UnaryOp(USub(), item)): return simplify(item) case _: return node ``` Cheers, Mark. _______________________________________________ Python-Dev mailing list -- python-dev@python.org To unsubscribe send an email to python-dev-le...@python.org https://mail.python.org/mailman3/lists/python-dev.python.org/ Message archived at https://mail.python.org/archives/list/python-dev@python.org/message/ETZGYRCF4DR6RJXTHGXIRZXINXJ76J2D/ Code of Conduct: http://python.org/psf/codeofconduct/