earncef
5d8457a8f6
Removed double indirection for massive performance gains ( #140 )
...
* Removed double indirection for performance gains
* Added missing file
* Cleanup
* Remove pointers patch.
* Cleanup
* Removed redundant parenthesis
* FreeVar changed to ObjectPtr and removed OpSetLocalPtr
* Removed truePtr, falsePtr and undefinedPtr
* Cleanup
2019-03-14 01:07:19 -07:00
earncef
c437def4a0
Decoupled stdlib from vm, script and compiler ( #126 )
...
* Decoupled stdlib from script
* Decoupled compiler and vm from stdlib
* cleanup
* Docs and cleanup
* main package with and without stdlib
* cleanup
* Update .goreleaser
2019-03-04 10:21:39 -08:00
Daniel
68cd38e49e
minor doc update
...
1. composite types -> compound types (#128 )
2. composite assignment -> compound assignment
2019-03-03 15:21:28 -08:00
Daniel
53ce12998e
add module-import tests to most of runtime package ( #125 )
2019-03-01 15:55:29 -08:00
earncef
6dd573c3f6
Runtime error trace format ( #111 )
...
* Runtime error format
* Parser and Compiler error formats updated
2019-02-22 13:39:07 -08:00
earncef
f265f1702b
Stack trace for errors ( #108 )
...
* Simple strack trace for runtime errors.
* Module test for runtime error stack trace
* Removed OpExport
* Removed redundant code.
* Removed vm.FrameInfo()
2019-02-21 09:40:17 -08:00
Daniel
3500c686b3
Improvements on compiler/VM error reporting (filename:line:col)
...
- add type infos to VM error messages
- add 'Name' to UserFunction objects
- add 'expectErrorString' to VM tests
- replace vm.expectError() with vm.expectErrorString() to make it more explicit
- add source map info to VM error messages
- optimization in function calls
- add file/line/col info to compiler errors
- change stdlib module to be loaded from VM (instead of compiler) so they can be properly loaded after the source is compiled into binary
- VM can take builtin modules optionally
2019-02-20 16:26:11 -08:00
Daniel
fc4e3586c4
Fix a closure-block scope bug ( #99 )
...
* fix issue #98
* remove objects.CompiledModule
* remove objects.CompiledModule
2019-02-11 17:34:02 -08:00
Daniel Kang
eda0495f30
Fix several module-related issues
2019-02-02 22:22:40 -08:00
Daniel Kang
9c21c8a804
Fix a bug where user modules couldn't resolve builtin functions
2019-02-01 18:13:29 -08:00
Daniel Kang
306fe1b24c
clean up stdlib code
2019-01-29 19:52:00 -08:00
Daniel Kang
1045afd5a4
add Indexable / IndexAssignable interface
2019-01-22 15:44:37 -08:00
Daniel Kang
5164d1de9f
add 'exec' module
2019-01-18 10:17:24 -08:00
Daniel Kang
8cad04841e
add os File functions; add Bytes type
2019-01-18 01:43:46 -08:00
Daniel Kang
3f55a6b5b0
Modules ( #5 )
...
Implement module imports
2019-01-17 01:56:05 -08:00