Daniel Kang
306fe1b24c
clean up stdlib code
2019-01-29 19:52:00 -08:00
Daniel Kang
85da0cdc24
force using TrueValue, FalseValue, UndefinedValue
2019-01-28 13:09:40 -08:00
Chyroc
d413d2ffe7
feat: add builtin function: type
2019-01-28 13:19:03 +08:00
Daniel Kang
cae7b24770
ternary conditional expression implementation
2019-01-27 17:28:30 -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
37016f4e17
add 'printf' and 'sprintf' builtin functions
2019-01-24 16:38:04 -08:00
Daniel Kang
2486457fdf
add Iterable interface
2019-01-23 13:36:03 -08:00
Daniel Kang
a562964007
Merge pull request #30 from d5/indexable
...
Indexable and IndexAssignable
2019-01-23 09:29:19 -08:00
Mike Bazuin
e94b3dab0f
Added builtin function from_json
...
objects/builtin_json.go:
- Added function builtinFromJSON
objects/builtins.go:
- Added builtin function from_json
runtim/vm_builtin_test.go:
- Added tests for builtin function from_json
2019-01-23 17:24:53 +01:00
Mike Bazuin
c4e6e61fb6
Added builtin function to_json
...
objects/builtin_json.go:
- Added function builtinToJSON
objects/builtins.go:
- Added builtin function to_json
runtime/vm_builtin_test.go
- Added tests for builtin function to_json
2019-01-23 17:24:53 +01: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
Mike Bazuin
fae85000cf
Convert returns second argument Object as it self in case of failure of conversion of first argument
...
objects/builtin_convert.go
- Changed type check of in case of args[0] failure to always return
args[1] if set
runtime/vm_builtin_test.go:
- Changed tests according to changes in objects/builtin_convert.go
2019-01-18 23:29:04 +01:00
Mike Bazuin
a747c98fb5
Builtin converts now take default values
...
objects/builtin_convert.go: Added defaults to all builtin convert functions except
bool as this one returns false for undefined, instead of undefined.
runtime/vm_builtin_test.go: Added tests for checking default value
behaviour for builtin convert funcs
2019-01-18 22:21:42 +01:00
Mike Bazuin
b4a2da8a30
runtime/vm_builtin_test.go: Added builtin bytes convert test
2019-01-18 22:21:35 +01:00
Daniel Kang
5164d1de9f
add 'exec' module
2019-01-18 10:17:24 -08:00
Daniel Kang
a8d838ad3e
Compile can take custom stdlibs
2019-01-18 09:19:45 -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
dc16c9abb2
update tests for index/slice operators
2019-01-14 04:26:20 -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