Skip to content

Releases: froth/rust-lox

v1.1.0

29 May 14:01
349a6af
Compare
Choose a tag to compare

Implement graphviz visualization of ASTs.

What's Changed

Full Changelog: v1.0.0...v1.1.0

v1.0.0

18 Apr 20:01
b11f956
Compare
Choose a tag to compare

Finished implementation of the tree-walk interpreter

What's Changed

  • Implement basic inheritance by @froth in #54
  • Implementation of super keyword by @froth in #55

Full Changelog: v0.6.0...v1.0.0

v0.6.0

16 Apr 19:37
9307588
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.5.0...v0.6.0

v0.5.0

03 Apr 14:07
Compare
Choose a tag to compare

What's Changed

  • Remove lexeme from token by @froth in #48
  • Implement classes including set and get expressions by @froth in #49
  • Implement methods on class instances by @froth in #50

Full Changelog: v0.4.0...v0.5.0

v0.4.0

15 Mar 20:54
Compare
Choose a tag to compare

What's Changed

  • Support for function calls and a single builtin function by @froth in #42
  • Check for wrong function arity by @froth in #43
  • Support for function declarations with closures by @froth in #45
  • Add Resolver to fix scope issues by @froth in #46
  • Report an error in resolver when trying to return from top-level by @froth in #47

Full Changelog: v0.3.0...v0.4.0

v0.3.0

07 Mar 19:32
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.2.0...v0.3.0

v0.2.0

06 Mar 18:47
Compare
Choose a tag to compare

What's Changed

  • Variable assignment by @froth in #31
  • Put lox history file at better path and allow for customization by @froth in #32
  • Add cargo fmt --check to pipeline by @froth in #33
  • Create support for local Environments with shadowing by @froth in #34
  • Setting verbose flag prints token stream and AST by @froth in #35
  • Add support for blocks by @froth in #36
  • Refactored parser to separate files by @froth in #37
  • implement if statement by @froth in #38

Full Changelog: v0.1.0...v0.2.0

v0.1.0

27 Feb 21:14
Compare
Choose a tag to compare

First release includes support for basic expressions, print statements and variable definitions with initialization but not assignment.

What's Changed

  • Add start of parser until error handling got important by @froth in #3
  • Testing based on to_string, wrong but more readable by @froth in #5
  • Implement alternative ErrorReporter for testing by @froth in #6
  • More rusty error handling by @froth in #7
  • Migrate error handling to Result<> by @froth in #8
  • Error handling by @froth in #9
  • Finished parser with basic error handling and unwind by @froth in #10
  • Start of interpreter, lots of better error handling by @froth in #11
  • Implement most of basic interpreter. by @froth in #13
  • Impl interpreter by @froth in #14
  • Support for print and expr statements by @froth in #15
  • Extracted interface for printing to allow for tests by @froth in #16
  • Allow for state in expr interpreter by @froth in #17
  • Implement synchronization by @froth in #18
  • Start of implementing variables by @froth in #19
  • Fixed some lifetime problems by Rc by @froth in #20
  • Multiple trait impls for one globar struct by @froth in #21
  • Definition and reading of variables by @froth in #22
  • Implemen From<&str> for common types by @froth in #23
  • Add rustyline to allow for multiline input and history by @froth in #24
  • Reduce into_diagnostic by reusing rustyline::Result by @froth in #25
  • Allow for evaluation of expressions in repl by @froth in #28
  • Run integration tests using datadriven by @froth in #29

New Contributors

  • @froth made their first contribution in #3

Full Changelog: https://github.com/froth/rust-lox/commits/v0.1.0