Skip to content

Rewriting the CPython Compiler and Virtual Machine (essentially) from scratch. ๐Ÿ

License

Notifications You must be signed in to change notification settings

curtisbucher/curvy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

15 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

curvy_logo

~~ The Curvy Homebrew Interpreter ~~

Curvy is an attempt to learn how CPython works under the hood, by attempting to rewrite much of the crucial code, while leveraging the existing CPython distribution to handle the nitty gritty details.

Ultimately, I hope to use curvy as a learning resource to implement gradually more of the interpreter as I progress in my knowledge.

Progress

Currently, I am using CPython to generate an AST from python input, which I then hand to my rewritten optimizer, compiler and virtual machine. The challenge right now is to implement basic python functionality into my compiler and VM.

Currently, all elementary operations are supported, as well as a number of common data types, such as numbers, strings, lists, sets and dictionaries. Conditionals and loops are also supported.

Screenshots

carbon

About

Rewriting the CPython Compiler and Virtual Machine (essentially) from scratch. ๐Ÿ

Topics

Resources

License

Stars

Watchers

Forks

Languages