Commit Graph

19 Commits

Author SHA1 Message Date
Dmitry Kurinskiy
bbf47628c6
Co expression (#181) 2021-06-24 11:01:59 +03:00
Dmitry Kurinskiy
985309d4eb
Fixes missing par (#177)
* Fixes missing par

* test for par

* Par topology bug fixed

* test `on` on every par branch

* Topology refactoring

* Tests compilation wip

* Tests compilation wip

* Tests compile

* Test fix

* Non-par tests fixed

* The last test remains

* Topology tests fixed

* SemanticsSpec compiles

* transformspec wip

* fix diff

* TransformSpec with diff

* test for error handling

* topology resolver spec wip

* delete test, rename test

* fixed

* par with export variable test

* test for try without catch

* Handle try without catch

* XorParTag fix

* Wake up target peer after par

* Increment version

* Fix xor par during func model resolution

* test with import and fold

* Linker bug fixed

Co-authored-by: DieMyst <dmitry.shakhtarin@fluence.ai>
2021-06-22 11:03:45 +03:00
Dima
f71de81cb4
test kit as separate project (#178) 2021-06-18 17:01:31 +03:00
Dima
896cf7a228
throw an error if assign to a variable result of a function that returns nothing. refactoring (#174) 2021-06-18 11:13:54 +03:00
Dmitry Kurinskiy
8586d70364
148 topology fix (#169) 2021-06-17 17:32:38 +03:00
Dmitry Kurinskiy
ee23ffeb9e
Introduce Catch espression (#162) 2021-06-10 16:33:01 +03:00
Dmitry Kurinskiy
4696e95129
Model refactoring to isolate imports, exports (#156)
* Model refactoring to isolate imports, exports

* Filter duplicate errors

* Do not export imports

* Add types to ServiceModel, AquaContext

* Print compiler version in AquaCli
2021-06-08 15:55:06 +03:00
Dmitry Kurinskiy
d300a7dea3
AssignmentExpression (#155)
* AssignmentExpression

* Increment minor version due to syntax enhancement

* Don't generate (null) for assignment tags

* AbilityIdTag

* Added defaultId to ServiceModel

* fix compilation

Co-authored-by: DieMyst <dmitry.shakhtarin@fluence.ai>
2021-06-08 09:42:09 +03:00
Dmitry Kurinskiy
0e2ea88934
Support options for via clause in on expression (#153)
* Support options for `via` clause in `on` expression

* Remove the generated comment

* Fix: provide stream as an argument

Co-authored-by: Dima <dmitry.shakhtarin@fluence.ai>
2021-06-03 17:43:58 +03:00
Dmitry Kurinskiy
807c26619f
108 option type (#146)
* Option type support: arguments, values

* Aqua version 0.1.4

* Fix for optional return value in TS

* Tiny fixes

* Example for declaring local options
2021-06-02 12:29:12 +03:00
Dmitry Kurinskiy
378d154ff7
Added bang op to get array items by index (#144) 2021-06-01 20:07:09 +03:00
Dmitry Kurinskiy
58132b8d8b
Try expression added (#132)
* Try expression added

* Increment `baseAquaVersion` due to syntax change.
2021-05-27 14:13:38 +03:00
Dima
720de27f14
Parsing refactoring (#111)
* WIP, nothing work

* delete ParExpr, ParSem, rewrite exprs, RootCompanion, WIP

* list of tokens to tree

* fix leaf ast

* move expr

* it works?

* small changes

* handle errors

* some refactoring

* WIP

* WIP

* merge

* comments, cleaning up

* split Companion and RootCompanion

* clean up

* couple tests

* fix tests

* ParPrefix?

* Expr code reorganisation

* ParExpr/ParSem returned

* Test fixed

Co-authored-by: dmitry <dmitry@fluence.one>
2021-05-20 16:12:13 +03:00
Dmitry Kurinskiy
c4a2752e18
For...try expression (#115) 2021-05-14 11:36:49 +03:00
Dmitry Kurinskiy
27f2912c5f
Streams support (#87)
* #29 going to support streams

* Added StreamName

* StreamName removed

* Streams support works

* Debug println removed

Co-authored-by: Dima <dmitry.shakhtarin@fluence.ai>
2021-04-27 16:59:12 +03:00
Dima
ca8e3bfa40
Constant expr (#79) 2021-04-22 16:42:08 +03:00
Dmitry Kurinskiy
7512648cd0
69 wrong varnames (#74)
* Bug #69 reproduced in test

* Bug #69 reproduced in a test

* Fixes #47 (allow arg names in service function definitions)

* ServiceModel

* AbilityModel is removed, as it's unused

* Fixes #65: expose %init_peer_id% as a literal

* Removed FuncResolved, as it's not resolved actually

* Fixes #69

* Helpers for func op showing & building

* Compile bug fixed

* Comments

* Removed ScriptModel.enqueue
2021-04-19 16:22:45 +03:00
Dmitry Kurinskiy
970da2e1b7
30 import basics (#49)
* Functions must be marked with `pub` to be exported

* AquaFiles WIP

* Factoring out linker

* Core linker logic

* FileModuleId WIP

* AquaFile WIP

* AquaFiles WIP

* Basic imports works

* Show errors

* Dirty hack to make imports work (almost)

* Better errors displaying

* Simplified AquaCompiler interface

* Write compiled files

* New AquaCli

* CLI fixed, works

* Review fixes
2021-04-13 16:05:31 +03:00
Dmitry Kurinskiy
0de43b470e
39 fix callbacks (#43)
* Project layout reorganized

* Topology resolution extracted to a separate file

* FuncResolved class

* aqua.model.transform

* Basic bubbling

* Get more context into topology resolver

* Failing Topology test

* Get back in seq

* OnTag.via: List changed to Chain, as via is reversed and concatenated quite frequently
2021-04-06 19:01:25 +03:00