Marc Vertes
9bbb7ad855
Fix compositeSparse()
2018-10-09 17:10:25 +02:00
Marc Vertes
b8e0786032
No need for specific struct field assignement
2018-10-09 15:54:33 +02:00
Marc Vertes
32bfd8a18a
Represent struct as reflect.Value instead of []interface{}
2018-10-09 12:21:48 +02:00
Marc Vertes
dbe2d3d3bf
improve use of genValue()
2018-10-05 15:21:02 +02:00
Marc Vertes
e1221600fd
WIP handle runtime values as reflect.Value instead of interface{}
2018-10-04 11:46:07 +02:00
Marc Vertes
56bbb4d846
Fix generation of function call
2018-10-01 18:02:02 +02:00
Marc Vertes
8c9fd32cfd
Improve execution of graph of closures
2018-10-01 16:42:15 +02:00
Marc Vertes
e8685fffa2
WIP accelerate execution of builtins
2018-09-28 14:53:30 +02:00
Marc Vertes
335373164f
get rid of sleep()
2018-09-27 14:00:41 +02:00
Marc Vertes
7d58f10ee8
[WIP] generation of closures to execute node builtins
2018-09-27 13:44:43 +02:00
Marc Vertes
a44987452c
[WIP] generation of closures to execute node builtins
2018-09-27 10:49:35 +02:00
Marc Vertes
a506592409
[WIP] generation of closures to execute node builtins
2018-09-27 10:07:46 +02:00
Marc Vertes
187100a5c3
get rid of callGoRoutine, goroutine handled by call generator
2018-09-26 17:24:42 +02:00
Marc Vertes
d5a390f0fe
[WIP] generation of closures to execute node builtins
2018-09-26 16:48:29 +02:00
Marc Vertes
bb220fe143
Fix getIndexSeq() generator
2018-09-26 15:18:52 +02:00
Marc Vertes
973fedab6b
[WIP] generation of closures to execute node builtins
2018-09-26 15:11:56 +02:00
Marc Vertes
ec5651400d
[WIP] generation of closures to return node values
2018-09-25 18:59:12 +02:00
Marc Vertes
3b49892d2c
[WIP] generation of closures to return node values
2018-09-25 18:25:07 +02:00
Marc Vertes
e82a223541
Introduce gobal type analysis step. Add several tests for out of order.
2018-09-19 18:34:56 +02:00
Marc Vertes
83f3967327
Fix nodes with unresolved symbols due to out of order parsing
2018-09-15 15:23:15 +02:00
Marc Vertes
a3259293cb
Fix arg setting in callBin(). Assign Unset type to nil
2018-09-14 15:49:04 +02:00
Marc Vertes
adbcd2ec2d
Fix regressions in variables assignments
2018-09-11 19:28:08 +02:00
Marc Vertes
ca8fd19ebb
fix reflect.Value paramereter passing to some binary functions
2018-09-06 18:42:01 +02:00
Marc Vertes
a5cf1ab720
Fix handling of nil values with binary functions
2018-09-05 09:53:58 +02:00
Marc Vertes
433c737c11
add value to nil comparison functions
2018-09-04 14:48:48 +02:00
Marc Vertes
044d59367d
Fix bin type convert, following bin representation changes
2018-08-30 11:13:09 +02:00
Marc Vertes
c280611fb4
Fix call expressions involving functions from stdlib, update to go-1.11
2018-08-29 14:35:44 +02:00
Marc Vertes
25adc35a3c
Change representation of stdlib from interface{} to reflect.Value
...
This fixes problems due to storing binary symbols as interfaces{}
instead of concrete type, which confuses lookup functions to retrieve
methods etc. in reflect.
2018-08-28 03:12:28 +02:00
Marc Vertes
27a50ad249
Fix init of arrays of arbitrary types (in progress)
2018-08-23 15:12:40 +02:00
Marc Vertes
9c9121822d
Fix global symbols resolution, empty array declaration
2018-08-22 15:40:43 +02:00
Marc Vertes
afa3545bb2
add preliminary support to panic()
2018-08-20 13:53:29 +02:00
Marc Vertes
006e96a9eb
Fix memory management in case of multiple source files
...
Do not depend on order or location when parsing for global and symbols:
a global symbol can be used before being defined, use and definition
can be in different files.
2018-08-16 19:22:18 +02:00
Marc Vertes
f42055b7d0
Improve handling of types, symbols, builtins and predefined objects
...
The resolution of types, builtins, constants, is now performed
through scopes only, instead of multiple unrelated data structures.
The initialization of predefined types, constants and builtins is
now done in the global scope (universe block).
2018-07-26 05:45:45 +02:00
Marc Vertes
567985f0cf
Improve handling of out of order declarations
2018-07-24 16:32:08 +02:00
Marc Vertes
915d976d12
Improve creation of local vars. Change handling package state and metadata (in progress)
2018-07-20 10:19:31 +02:00
Marc Vertes
119b5bc40c
Fix invocation of closure from runtime
2018-07-10 16:46:03 +02:00
Marc Vertes
c753054159
Fix type conversion for runtime wrapped functions
2018-07-09 17:20:25 +02:00
Marc Vertes
0a6954caac
Improve type conversion and bin methods resolution
2018-07-09 11:33:09 +02:00
Marc Vertes
8ab3c06e5a
Fix handling of closures
2018-07-05 18:57:53 +02:00
Marc Vertes
6277727660
Add support for negate expressions
2018-07-03 16:14:41 +02:00
Marc Vertes
824d65abc4
Add support for type conversion (in progress)
2018-06-29 17:51:48 +02:00
Marc Vertes
77c015fcb8
Handle type assertions (first attempt)
2018-06-27 14:59:23 +02:00
Marc Vertes
a062e34ba8
Fix map check expression
2018-06-26 18:27:14 +02:00
Marc Vertes
deb1c0136c
Add support to variadic functions
2018-06-21 12:39:50 +02:00
Marc Vertes
75146ed4fc
Fix method receivers handling
2018-06-20 17:30:14 +02:00
Marc Vertes
41bfcfbfb0
minor code cleaning
2018-06-20 10:57:39 +02:00
Marc Vertes
cf0ee1e75c
Fix assign outside of local scope. Support append (1 item only)
2018-06-20 10:03:20 +02:00
Marc Vertes
71c4ec10b2
Improve type handling, simplify arrays
2018-06-19 16:40:24 +02:00
Marc Vertes
9d1fe83dcd
Add support for slice expressions
2018-06-14 00:00:31 +02:00
Marc Vertes
b4c6624f3c
Do not export private AST node fields
2018-06-13 15:42:01 +02:00