Commit graph

12 commits

Author SHA1 Message Date
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
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 Kang
eda0495f30 Fix several module-related issues 2019-02-02 22:22:40 -08:00
Daniel Kang
64d99807d8 remove unused code for tuple value return 2019-01-30 02:01:44 -08:00
Daniel Kang
19498da491 adding immutable value (incomplete) 2019-01-24 19:31:17 -08:00
Daniel Kang
336fbc30e5 some performance optimization in VM 2019-01-20 08:32:12 -08:00
Daniel Kang
3f55a6b5b0
Modules (#5)
Implement module imports
2019-01-17 01:56:05 -08:00
Daniel Kang
8171d58071
Error Object (#4)
add error expression and error object
2019-01-16 12:23:20 -08:00
Daniel Kang
b79fd4f7ef
Fix lint issues (#2)
* addressing golint issues

* fix all lint issues.
2019-01-14 22:24:33 -08:00
Daniel Kang
d870ebf72e variable definition (operator ":=") is now required not optional 2019-01-10 22:34:28 -08:00
Daniel Kang
2c3282da21 initial commit 2019-01-08 23:17:42 -08:00