Improve interface between compiler and symtable
Abierto
Nadie ha tomado este issue todavía.
interpreter-core
type-feature
- Lenguaje dominante
- Python
- Estrellas
- 77.2k
- Forks
- 36k
- Métricas de merge de PR
- Métricas de PR pendientes
Descripción
In this issue I want to try and improve the interface between the compiler and the symtable.
Problems I see are:
- the compiler modifies the symtable
- the compiler performs calculations that the symtable could do (such as in
push_inlined_comprehension_state) - the symtable is actually not a correct representation of some scopes, like those of inlined comprehensions (the comprehension scope it removed from the symtable tree, but is still access from the compiler via the symtable dict). Exception handlers are another example of scope changes that the compiler does, which are not reflected in the symtable.
Linked PRs
- gh-122986
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Empieza leyendo las implementaciones de compiler y symtable, centrándote en push_inlined_comprehension_state y en el manejo de las inlined comprehensions y los controladores de excepciones. Se considera terminado cuando se haya establecido una interfaz más limpia en la que compiler no modifique symtable, los cálculos que pertenecen a symtable se trasladen allí y los cambios de ámbito se representen de forma coherente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- compilers
- Tipo de issue
- Refactorización
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 15/100