Anton Medvedev and GitHub
205e24128e
Add better error message for OpFetchField on missing field ( #276 )
2022-11-05 22:00:11 +01:00
Anton Medvedev and GitHub
1c69d7a8ef
Add OpCallTyped ( #269 )
2022-11-05 13:44:15 +01:00
Anton Medvedev and GitHub
e0b6b22aeb
Save AST in compiled program ( #268 )
2022-11-03 07:53:17 +01:00
Anton Medvedev
b8346f98f1
Optimize method calls and builtins opcodes
2022-10-27 21:23:04 +02:00
Anton Medvedev
fa60189e66
Cleanup
2022-10-26 18:48:27 +02:00
Anton Medvedev
aa5c5f09e1
Split arguments
2022-10-25 23:13:20 +02:00
Anton Medvedev
cfc9843ccb
Simplify vm and opcodes
2022-10-24 23:26:22 +02:00
Anton Medvedev
0b523f347e
Sort imports
2022-10-22 13:39:04 +02:00
Anton Medvedev
dd65a0fc2d
Add compiler member fetch optimizations
2022-10-20 22:54:36 +02:00
Anton Medvedev
2a34731b5a
Add FieldByIndex optimization
2022-10-19 00:55:01 +02:00
Anton Medvedev
b0705d7de2
Add OpDeref opcode
2022-10-18 00:08:53 +02:00
Anton Medvedev
370551eb7e
Remove obsolete opcode
2022-10-16 22:20:55 +02:00
Anton Medvedev
ab621bec0e
Optional chaining
2022-10-15 15:59:39 +02:00
Anton Medvedev
2a88e4a52a
Refactor type checker
2022-10-13 10:01:35 +02:00
Anton Medvedev
da68511d23
Add vm/runtime package
2022-10-12 15:22:14 +02:00
Anton Medvedev
b24419bf76
Remove wrong nil safe implementation
2022-10-09 12:53:30 +02:00
Zach Badgett and GitHub
3eb822d35a
Add nil safe operator ( #173 )
2021-06-07 22:53:12 +03:00
Anton Medvedev
44eb8c179b
Improve location storage in program
2020-03-04 16:12:02 +03:00
Anton Medvedev
bb54a08b53
Sort imports
2020-02-25 09:33:17 +03:00
Anton Medvedev
de5d4adc5d
Lexer first commit
2020-02-25 09:33:17 +03:00
Anton Medvedev
13c0a78fa4
Add fast call opcode for special case functions
2019-10-15 14:43:03 +03:00
Anton Medvedev
e2f2207d81
goimports
2019-07-02 14:34:48 +03:00
Anton Medvedev
b79ca26ff0
Add slice operator
2019-06-25 14:49:03 +03:00
Anton Medvedev
08ac84ad03
Add cast feature
2019-06-22 15:15:58 +03:00
Anton Medvedev
50f83299ac
Move back to github host
2019-06-22 14:25:58 +03:00
Anton Medvedev
43a6054d04
Add new opcode OpRot
2019-06-21 14:18:54 +03:00
Anton Medvedev
1cb2656067
Use gopkg.in for v2 imports
2019-06-21 14:18:54 +03:00
Anton Medvedev
1448755b5c
Refactor OpPush and rename OpConst to OpPush
...
Somehow path from uint16 -> int -> interface{} via OpPush causing +17% slowdown.
After migrating to all constants everything seems to work even faster.
2019-06-14 14:11:11 +03:00
Anton Medvedev
02af4668fd
Remove redundant opcodes
2019-06-14 14:11:11 +03:00
Anton Medvedev
fad76b558b
Separate opcode for int equal
2019-06-14 14:11:11 +03:00
Anton Medvedev
3c77457b43
Better inc opcode
2019-06-14 14:11:11 +03:00
Anton Medvedev
19aa27c407
Add disassemble program tests
2019-06-14 14:11:11 +03:00
Anton Medvedev
fb30511dd7
Refactor helper package to file package
2019-06-07 16:47:22 +03:00
Anton Medvedev and GitHub
ef410b0f3f
expr v2
2019-05-28 00:09:22 +07:00