Skip to content

v0.0.45

Compare
Choose a tag to compare
@github-actions github-actions released this 05 Aug 23:45
6a51304
* chore: code cleaning

* docs: add installation script

* docs: update download script

* Update README.md

* Docs (#17) (#18)

* chore: code cleaning

* docs: add installation script

* docs: update download script

* Update README.md

* chore: use semantic versioning in release names

* v0.0.36 released

* [interpreter]: capturing runtime errors (#21)

* refactor: cleaner errors

* refactoring: rename `errors` package into `exception`

* refactoring: replace `Error` suffix with `Exception`

* feat: capture `RuntimeException`s

* refactor: minor cleaning

* fix: analysis error (#22)

* released v0.037

* chore: code cleaning

* docs: add installation script

* docs: update download script

* Update README.md

* [ui]: improve error handling

* refactor: improve error handling

* test: unit test map utility function

* fix: useless test

* feat: add parsing errors

* chore: use io stdout as a console writer

* feat: handle runtime errors

* fix: improve printing for exceptions in console

* Docs (#17) (#18)

* chore: code cleaning

* docs: add installation script

* docs: update download script

* Update README.md

* v0.0.36 released

* [interpreter]: capturing runtime errors (#21)

* refactor: cleaner errors

* refactoring: rename `errors` package into `exception`

* refactoring: replace `Error` suffix with `Exception`

* feat: capture `RuntimeException`s

* refactor: minor cleaning

* released v0.037

* chore: code cleaning

* docs: add installation script

* docs: update download script

* Update README.md

* fix: minor fix

* Improved error handling (#28)

## Parsing errors and runtime errors will not trigger a panic anymore

* [interpreter]: capturing runtime errors

* [parser]: capturing parsing errors

* fix: parse error does not print the culprit lexeme

* feat: improve error messages

* fix: evaluation not being performed in REPL

* release v0.0.40 (#30)

Improvements in error handling

* fix: parse error does not print the culprit lexeme

* feat: improved error messages

* fix: evaluation not being performed in REPL

* feat: add support for number formatting in string concatenation

* feat: disable division by zero

* test: add tests for interpreter

* fix: formatting error

* feat: add support for statements

* fix: interpreter should now return anything

* docs: Update README.md

* feat: add support for `var` keyword

* [feat]: add variable declaration (#32)

* feat: add support for variable declaration

* fix: environment destroyed on each REPL interation

* test: add test cases for env

* fix: static analysis error

* feat: variable assignment

* fix: assigning undeclared variable is not returning exception

* chore: minor change

* test: add new test cases to interpreter for variable assignment

* chore: minor cleaning

* refactor: rename `smt` into `stmt`

* test: more test cases

* fix: weak condition in test case

* test: more check in interpreter test cases

* [frontend]: assigning values to variable  (#35) (#36)

* feat: variable assignment

* feat: add support for nested variable environments

* feat: add support for block statements

* fix: add `;` at end of lines in tests

* feat: returns exception when accessing variable that points to `nil` value

* feat: evaluate expressions in REPL

* feat: if statements

* docs: polish installation instructions 💅

* docs: fix script issue for `x86_64`

Because the released `x86` binaries come with the suffix `amd64` for `x86_64` arch and the script uses the environment architecture to determine the correct binary file to download, the script was failing to recognize `glox-<platform>-amd64` as a the correct file for `x86`

* docs: more docs

* docs: add code snippet

* Create LICENSE

* fix: printer fails to visit variable nodes

* test: more test cases for printer

* test: more test cases

* test: add test cases for `token` pkg

* refactor: improve test quality for parser

* test: more test cases for binary expressions

* test: add test cases for grouping expressions

* test: more test cases for parser

* test: add test cases for ast.Variable

* test: add test cases for parsing ast.Assignment

* test: add parser test cases for statements

* refactor: remove dead code

* refactor: rename token for commenting

* test: more test cases for ast

* fix: use correct golang null terminator

* fix: wrong error message when using illegal token

* fix: minor error

* fix: more error handling improvements

* feat: start working on logical expressions

* fix: wrong lexeme for `OR` and `AND` tokens

* fix: failure to parse logical expressions

AM I STUPID???

* test: more test cases for logical expressions

* test: add more interpreter test cases

* test: more tests