Skip to content

rcardenes/lox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is my implementation of Lox/VM (thus "vlox", because I implemented the AST based one in C++ instead of Java, and that was "clox"...), with all the challenges I went through, plus some extensions.

It's a work in progress, really.

Included extras:

  • Implemented most of the challenges in the original book, meaning indices are not limited to 8 bits any longer, among other things.
  • Integers are a separate type, mostly for use as indexes.
  • List support, based on Caleb Schoepp's suggestions. Additionally:
    • Support for negative indexing
    • Support for slicing using the same syntax and conventions as Python.
      • Assignment to slices still pending.
    • Made append/delete into keywords (for the time being):
      • append expression newelement - where expression returns a list.
      • delete identifier[expression] - where identifier must refer to a list.
    • Deleting enough elements from a string makes it shrink. The current implementation is a bit naive though (just halve its capacity whenever possible).
  • Generalized indexing and slicing so that it works on strings.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published