-
- Downloads
feat: add comment/newline support, anonymous functions, ArneAlgebra, improved...
feat: add comment/newline support, anonymous functions, ArneAlgebra, improved error handling, and function-object assignments - Newlines and comments support in lexer. Will be passed to the parser but they are evaluated as noop. The parser takes these, to accurately reconstruct the source code when an error occurs during parsing, to show exactly where the error occurred, in context. - Improved Parser error messages with code trace - Improved error messages for argument list parsing, now detecting missing comma between params, and closing parenthesis - Added supoort for Anonymous functions - Added function assignment to object properties, must be anonymous - Added abs, sum, min and max functions to new global object 'ArneAlgebra' - Added support for adding strings with other strings and numbers as concatenation - Functions in objects now have access to the object properties as their own "environment" variables in runtime.
Showing
- examples/07_objects.styve 30 additions, 2 deletionsexamples/07_objects.styve
- src/frontend/lexer/Lexer.java 81 additions, 20 deletionssrc/frontend/lexer/Lexer.java
- src/frontend/lexer/Token.java 9 additions, 0 deletionssrc/frontend/lexer/Token.java
- src/frontend/lexer/TokenType.java 4 additions, 1 deletionsrc/frontend/lexer/TokenType.java
- src/frontend/parser/Parser.java 206 additions, 7 deletionssrc/frontend/parser/Parser.java
- src/runtime/environment/Environment.java 84 additions, 3 deletionssrc/runtime/environment/Environment.java
- src/runtime/eval/Expressions.java 38 additions, 4 deletionssrc/runtime/eval/Expressions.java
- src/runtime/eval/Statements.java 5 additions, 1 deletionsrc/runtime/eval/Statements.java
- src/runtime/values/RTFunctionCall.java 7 additions, 1 deletionsrc/runtime/values/RTFunctionCall.java
- src/runtime/values/RTValue.java 13 additions, 0 deletionssrc/runtime/values/RTValue.java
Loading
Please register or sign in to comment