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
earncef
5e21abfd74
IndexGet of Array, Index, ImmutableIndex, Bytes, String, Undefined
2019-02-09 16:45:21 -08:00
Daniel Kang
5713eb64fe
Fix a slicing expression bug: allow low-index == len(a)
2019-02-02 23:11:02 -08:00
Daniel Kang
eda0495f30
Fix several module-related issues
2019-02-02 22:22:40 -08:00
Daniel Kang
6a663c6360
add script.Compiled.Set
function so compiled script can replace value of global variables
2019-02-01 11:09:12 -08:00
Daniel Kang
64d99807d8
remove unused code for tuple value return
2019-01-30 02:01:44 -08:00
Daniel Kang
85da0cdc24
force using TrueValue, FalseValue, UndefinedValue
2019-01-28 13:09:40 -08:00
Daniel Kang
85001be9b8
implement immutable array and map
2019-01-25 14:54:58 -08:00
Daniel Kang
19498da491
adding immutable value (incomplete)
2019-01-24 19:31:17 -08:00
Daniel Kang
2486457fdf
add Iterable interface
2019-01-23 13:36:03 -08:00
Daniel Kang
1045afd5a4
add Indexable / IndexAssignable interface
2019-01-22 15:44:37 -08:00
Daniel Kang
336fbc30e5
some performance optimization in VM
2019-01-20 08:32:12 -08:00
Daniel Kang
88dd0224d5
use atomic.Load/Store to avoid data race
2019-01-20 06:33:22 -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
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
32df2862b5
remove unnecessary function calls in VM
2019-01-14 04:32:09 -08:00
Daniel Kang
de70f7c40d
trying to optimize VM by cutting some repeated codes
2019-01-13 15:21:19 -08:00
Daniel Kang
ca128af33b
reduce number of memory allocation in object binary operators
2019-01-13 14:24:39 -08:00
Daniel Kang
967ed03ccc
fix a bug in tail-call optimization code
2019-01-13 02:24:32 -08:00
Daniel Kang
b802132c94
remove VM.Stack() function
2019-01-11 21:50:23 -08:00
Daniel Kang
27438eea6f
update directory package structure
2019-01-11 02:27:28 -08:00