Skip to content
/ relox Public

Reimplementation of the lox programming language

License

Notifications You must be signed in to change notification settings

themifi/relox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Relox

Check and Lint Test with Code Coverage Line Coverage

Reimplementation of the Lox programming language.

Crafting interpreters book by Robert Nystrom explains how to implement the Lox programming language from scratch. This is my own implementation here written in the Rust programming lanugage.

The Lox programming language:

  • is a scripting language
  • shares C-like syntax
  • is dynamically typed
  • is garbage collected

More description in the book.

Components

  • Tree-walk interpreter
    • Scanning
    • Parsing
    • Evaluating
  • Intermediate representation
  • Optimization
  • Code generation
  • Virtual machine
  • Runtime

Path

A map of the territory

  • A Tree-Walk Interpreter
  • A Bytecode Virtual Machine
    • Chunks of Bytecode
    • A Virtual Machine
    • Scanning on Demand
    • Compiling Expressions
    • Types of Values
    • Strings
    • Hash Tables
    • Global Variables
    • Local Variables
    • Jumping Back and Forth
    • Calls and Functions
    • Closures
    • Garbage Collection
    • Classes and Instances
    • Methods and Initializers
    • Superclasses
    • Optimization

About

Reimplementation of the lox programming language

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages