Irit Katriel
Irit Katriel
It would work like this: 1. Streamulus defines placeholder terminals streamulus::_1, etc.. 2. The user defines a streamulus expression over them. 3. Then user subscribes the expression along with actual...
Check parameter count and types. Generate a friendly error message if they don't match. (Currently the error message is whatever the compiler spews out when the compilation fails).
1. The Stream should have timestamps so that ticks are combined correctly even in situations like x+filter(x). 2. Merging input streams should happen in a separate class so that different...
gh-93678: added _testinternalcapi.optimize_cfg() and test utils for compiler optimization unit tests
* Issue: gh-93678
* Issue: gh-95913
This reduces the total size of unused consts in the top 100 PyPl packages by about 2%: Before: Total: 75 errors; 9,946 files; 235,684 code objects; 3,669,436 lines; 31,309,347 opcodes;...
The compiler currently removes the [trailing unused consts ](https://github.com/python/cpython/blob/main/Python/compile.c#L9736)from code objects. We should remove all unused consts (except the first one, which may be a docstring). * PR: gh-99255
With this we can run just codegen from python, and get the un-optimized instruction sequence for an AST. * Issue: gh-87092
``` def f(x): match x: case a,b: return 1 import dis from pprint import pprint as pp def pos(p): return (p.lineno, p.end_lineno, p.col_offset, p.end_col_offset) pp([(pos(x.positions), x.opname, x.argval) for x in...
This PR removes the recursive updates which made the locations incorrect. They are still too broad in some cases, but we should deal with the separately. (One thing we would...