Anton Medvedev
c86f2e2718
Update real_world example
2024-02-16 23:13:44 +01:00
Anton Medvedev and GitHub
0d43107999
Add concat() builtin ( #565 )
...
* Add concat() builtin
* Use pkg deref in builtin
* Use pkg deref in checker
* Use pkg deref in types_table.go
* Use pkg deref in docgen.go
* Use pkg deref in vm
2024-02-16 22:32:35 +01:00
Anton Medvedev and GitHub
b1e82de54a
Refactor groupBy and sortBy ( #562 )
...
* Rearrange opcodes
* Refactor groupBy
* Fix tests
* Super opcodes for GroupBy
* Refactor sortBy builtin
* Fix sortBy bench
2024-02-15 19:53:35 +01:00
Anton Medvedev and GitHub
d1068977c7
Update SECURITY.md
2024-02-12 22:58:19 +01:00
Anton Medvedev
2171fef85d
Fix ast printing of ?.[
2024-02-12 22:15:17 +01:00
Anton Medvedev
fdae534aa9
Add OpCallSafe
2024-02-12 22:15:17 +01:00
Anton Medvedev
8073b4bdb7
Add program.Locations()
2024-02-11 22:58:31 +01:00
Anton Medvedev
5e6f8ebb30
Move bitFunc to utils.go
2024-02-11 22:49:25 +01:00
Anton Medvedev
db8de638f6
Code style
2024-02-11 22:48:38 +01:00
Sergey and GitHub
8037acf0bb
Optimize boolean operations between all, any, one, none functions ( #555 )
2024-02-11 22:23:48 +01:00
Yuriy Panarin and GitHub
8ec7fe3be8
code(builtin) - add reverse function ( #553 )
...
* code(builtin) - add reverse function
* docs(language-definition.md) - add reverse function
2024-02-11 22:21:49 +01:00
Vladimir Fetisov and GitHub
c7c060ff44
Fix operator overloading ( #554 )
2024-02-08 21:07:58 +01:00
Sergey and GitHub
8d2e6b133c
Add optional array access like foo?.[42] ( #550 )
2024-02-08 12:20:20 +01:00
Sergey and GitHub
a20dd842e3
Optimize jump opcodes ( #545 )
2024-02-02 19:37:21 +01:00
Sergey and GitHub
a0e2fe3664
Fix string literal slicing error ( #543 )
2024-01-31 18:07:26 +01:00
Anton Medvedev
d645265cd1
Fix pipeline and call parsing
2024-01-24 23:49:57 +01:00
Anton Medvedev
616653130e
Make AsAny the new default
2024-01-21 11:55:30 +01:00
Anton Medvedev
c2a9f54569
Fix type checker to visit all arguments of func even in args count mismatch
2024-01-18 07:52:06 +01:00
Anton Medvedev
7d4dd1a708
Improve ast printing for boolean operators
2024-01-17 23:21:11 +01:00
Anton Medvedev and GitHub
84f18d7e5d
Add ast tree to program ( #528 )
...
* Add pro holder
* explain
2024-01-17 20:01:34 +01:00
Ganesan Karuppasamy and GitHub
9b73bb722e
Remove parents field for optimization ( #527 )
2024-01-16 12:47:46 +01:00
Anton Medvedev
2e71b2fb71
Fix type any type propagation with patcher relationship
2024-01-16 10:27:10 +01:00
Ganesan Karuppasamy and GitHub
a1ddf76201
Support Valuer Patching for MemberNode ( #525 )
2024-01-16 09:40:36 +01:00
Anton Medvedev and GitHub
6c60616e35
Fix context patcher ( #526 )
2024-01-14 17:27:22 +01:00
Anton Medvedev and GitHub
010c934215
Fix race cond in variabels ( #523 )
...
* Add race cond test
* Move variables array to vm
* Resize vars array for different programs
2024-01-13 20:41:14 +01:00
Anton Medvedev and GitHub
e7b1a64b58
Allow to override builtins ( #522 )
...
* Allow to override builtins
* Add :: syntax to access builtin in case of override
2024-01-13 15:56:49 +01:00
Anton Medvedev and GitHub
74e30b9ecd
Add build tag: expr_debug ( #521 )
2024-01-13 13:14:38 +01:00
Anton Medvedev
9352898016
Simplify abs
2024-01-12 22:03:10 +01:00
Anton Medvedev and GitHub
79bb049707
Add [generated] tags to files ( #518 )
2024-01-12 21:58:13 +01:00
Anton Medvedev
d83dbd684c
Add info about nested predicates
2024-01-06 20:08:05 +01:00
Anton Medvedev
8fc496a31f
Add heading ids
2024-01-05 22:36:41 +01:00
Anton Medvedev and GitHub
d903980830
Add mem grow to builtin ( #505 )
...
* Add mem grow to builtin
* Add OpValidateArgs opcode
2023-12-30 12:49:43 +01:00
Anton Medvedev
35fc6ee22b
Update examples.txt
2023-12-29 23:01:52 +01:00
Anton Medvedev
1dca2cbdc2
Move ast.Function to builtin.Function
2023-12-29 21:04:25 +01:00
Anton Medvedev
092c84aab1
Rename func.go to lib.go
2023-12-29 21:00:43 +01:00
Anton Medvedev and GitHub
30be4c9f08
Remove redundant fields from CallNode and BinaryNode ( #504 )
2023-12-29 19:50:08 +01:00
Anton Medvedev and GitHub
c7e4ace44a
Update README.md
2023-12-28 16:17:10 +01:00
Anton Medvedev and GitHub
8e2df3e45e
Simplify ast nodes ( #503 )
...
* Move FiendIndex and MethodIndex out of ast nodes
* Remove println statement
* Add method compiler tests
2023-12-26 23:14:20 +01:00
Anton Medvedev
08c627946f
Sort imports
2023-12-26 23:11:55 +01:00
Anton Medvedev
bf37f8d7e2
Use errors.As
2023-12-26 23:11:40 +01:00
Anton Medvedev
1c71bad386
Add change ident patcher test
2023-12-26 16:24:00 +01:00
Anton Medvedev
5d8a11f2c5
Remove redundant func
2023-12-26 16:06:16 +01:00
Ryan Bullock and GitHub
3bda06349a
Patcher and interfaces for custom types to be used in expressions as standard go types ( #487 )
...
* A bultin patcher providing interfaces for custom types that can be represented as standard go types for expressions.
* Move node creation inside of loop.
* Reorder imports. Fix some formatting.
* Rename expr function from 'getExprValue' to '$patcher_value_getter'.
* Move to expr-lang
* Rename Patcher to ValueGetter
* Remove use of Expr in naming
* Rename interface functions to use 'AsType()' convention
* Document motivation and an example use case
* Add example usage to AsAny()
* Move under patcher directory
* Fix reference to old import path
2023-12-26 16:01:55 +01:00
Anton Medvedev
15a98164a2
Update README.md
2023-12-26 09:15:10 +01:00
Anton Medvedev
65d660e819
Update docs
2023-12-26 09:13:43 +01:00
Anton Medvedev
d05d224605
Update bit* examples to use 0bxxxx integers
2023-12-26 09:09:19 +01:00
Anton Medvedev
579588df28
Rename language-definition.md
2023-12-25 18:56:06 +01:00
Anton Medvedev
71c5bb3fe3
Add bitwise
2023-12-25 18:55:37 +01:00
Anton Medvedev
1352f92f76
Update Language-Definition.md
2023-12-25 18:36:50 +01:00
a0db9a6c19
feat: Implement Bitwise and Shift Operator Support ( #496 )
...
Co-authored-by: Ganesan Karuppasamy <[email protected] >
2023-12-25 18:25:26 +01:00