File tree 2 files changed +415
-3
lines changed
2 files changed +415
-3
lines changed Original file line number Diff line number Diff line change 1
1
# Tooling to generate interpreters
2
2
3
+ Documentation for the instruction definitions in ` Python/bytecodes.c `
4
+ ("the DSL") is [ here] ( interpreter_definition.md ) .
5
+
3
6
What's currently here:
4
7
5
8
- ` lexer.py ` : lexer for C, originally written by Mark Shannon
6
9
- ` plexer.py ` : OO interface on top of lexer.py; main class: ` PLexer `
7
10
- ` parser.py ` : Parser for instruction definition DSL; main class ` Parser `
8
11
- ` generate_cases.py ` : driver script to read ` Python/bytecodes.c ` and
9
12
write ` Python/generated_cases.c.h `
13
+ - ` test_generator.py ` : tests, require manual running using ` pytest `
10
14
11
- The DSL for the instruction definitions in ` Python/bytecodes.c ` is described
12
- [ here] ( https://github.com/faster-cpython/ideas/blob/main/3.12/interpreter_definition.md ) .
13
- Note that there is some dummy C code at the top and bottom of the file
15
+ Note that there is some dummy C code at the top and bottom of
16
+ ` Python/bytecodes.c `
14
17
to fool text editors like VS Code into believing this is valid C code.
15
18
16
19
## A bit about the parser
You can’t perform that action at this time.
0 commit comments