2 dépôts
Manages variable storage and scope lifecycle dynamically during program execution without a separate compilation step.
Distinct from Runtime Global Memory Managers: Distinct from Runtime Global Memory Managers: focuses on interpreter-level variable and scope management rather than native API or threading memory structures.
Explore 2 awesome GitHub repositories matching operating systems & systems programming · Interpreter Memory Managers. Refine with filters or upvote what's useful.
CPython-Internals est un guide d'implémentation technique et une référence pour l'interpréteur CPython. Il fournit une analyse détaillée du code source C interne et de l'architecture, en se concentrant sur la logique qui régit le comportement de l'interpréteur. Le projet documente le modèle d'objet Python et le pipeline de compilation, retraçant le processus depuis la grammaire brute et les arbres de syntaxe abstraits jusqu'au bytecode exécutable. Il sert également de référence pour le développement d'extensions C, expliquant comment interfacer avec les structures de données internes et utiliser l'API C. Le matériel couvre la gestion de la mémoire, incluant le comptage de références et le garbage collection générationnel, ainsi que la fonction du verrou global de l'interpréteur (GIL).
Analyzes the internal implementation of reference counting, generational garbage collection, and the global interpreter lock.
This project is a C language interpreter and a practical implementation of a programming language. It parses and executes C source code directly, removing the requirement for a separate compilation step. The interpreter is designed for self-hosting, meaning it is capable of interpreting its own source code to demonstrate recursive language processing and execution. The system covers the primary stages of language processing, including lexical analysis, recursive descent parsing, and tree-walk interpretation using an abstract syntax tree. It manages memory and scope through a dynamic symbol t
Handles variable storage and scope lifecycle dynamically during program execution without a separate compilation step.