Commit Graph

251 Commits

Author SHA1 Message Date
b9af20339b Module and Use expressions (#245)
* Module and Use expressions

* UseFromExpr

* ImportFromExpr

* PubExpr

* Export, declares

* Collecting all the needed info WIP

* Got all the needed data

* Tests fixed

* HeaderSem

* HeaderSem wip

* Everything except `export`/`declares` should be working

* Compile bug fixed

* Fix readme: cli/assembly

* Handle declares, exports

* Compile only exports in AquaRes

* Call services imported from modules

* Import consts, types, services from modules

* Resolve arrows from modules

* Bugfix
0.1.14
2021-08-20 18:03:47 +03:00
296c64836d Js build (#247) 2021-08-18 13:06:14 +03:00
f59a93ac27 filter non-aqua files (#246) 2021-08-18 11:49:53 +03:00
96bc76ef2a Separate Transform from Model (#244)
* Separate Result from Model

* Result->Transform, docs in README.md
2021-08-16 17:58:15 +03:00
6c498b029b Updating compiler backends (#243)
* Updating compiler backends: add FuncRes

* TypeScriptService

* ServiceRes
2021-08-16 16:59:36 +03:00
38fb824b68 CI: publish to NPM as 'aqua' & 'aqua-cli' (#242) 0.1.13 2021-08-13 19:16:14 +03:00
3d85f54580 JAR=cli/.jvm/target/... (#240)
Since we moved to JVM + JS crossbuilds, JVM artifacts are now placed under .jvm/target
2021-08-12 15:06:41 +03:00
e2da2e90d7 Crossprojects for JVM and JS platforms (#237) 2021-08-11 19:53:36 +03:00
50aa4db4e8 CI: Do not trigger releases on push (#239) 2021-08-11 18:22:52 +03:00
f7aa118006 Multireturn bugfix (#238) 2021-08-11 10:55:25 +03:00
3eb3ecc221 Return many values from a single function (#229) 2021-08-09 21:33:55 +03:00
cd30ff8e8c Introducing Product type (#225)
* Introducing Product type

* Main codebase compiles with Arrow(domain, codomain)

* Tests compile

* Tests passed

* Tiny fixes: use argument labels in js/ts generators

* Fix for return type in .ts

* Typescript fix

* Fix for option return in JS

* Arrow variance fix

* separated CompareTypes

* Added deprecation notices to ArrowType functions

* Compile error fixed

* Types doc comments

* Multi-value return is supported in the model

* Tests compilation fixes wip

* Test compiles

* Bugfix

* Bugfix
2021-08-06 16:31:47 +03:00
4ccac9bf0e Migration to Scala 3 (#228) 2021-08-06 13:33:58 +03:00
ee67d038ad 53 219 issues (#224)
* functions that only return literal, don't parse top-bottom

* empty funcOp to FuncOps

* version

* fix
0.1.12
2021-08-04 13:16:42 +03:00
e3716f6f31 Converting compiler to a pure function (#217)
* Trying to make the compiler a pure function

* Pure compiler WIP

* Compiler should be working now

* printlns

* printlns

* printlns

* fix, delete printlns

* more logs

* fix import resolving, more tests

* fix imports, add tests for imports resolving

* fix test

* correct paths to targets, correct output

* refactoring, create directories to file if not exist

* small changes

* fix test

* Tiny fixes WIP

* Tiny fixes

* Incrementing base version, as host_peer_id is added (fixes #218)

* render error messages, WIP

* small fix

* get src for lexer error

* wrap parser error

* add list of errors

* Handle file write errors accurately

* Use show syntax

* fix test

* fix test

* fix test

* println

Co-authored-by: DieMyst <dmitry.shakhtarin@fluence.ai>
0.1.11
2021-08-03 17:23:28 +03:00
2eb4598093 Return T | null on optional results (#221) 2021-07-29 13:49:25 +03:00
b6989058fc Automatically generate changelog (#220) 2021-07-27 16:41:23 +03:00
81cd3a2c71 200 202 stream resolving (#213) 2021-07-27 09:58:33 +03:00
3bbf089e87 209 Push to stream (#214) 2021-07-26 14:31:17 +03:00
f683a6b3cf Fix incorrect compilation with arguments duplication (#211) 2021-07-22 12:08:55 +03:00
c292ce05d7 Use backwards compatible syntax for config.ttl (#206) 2021-07-17 17:33:19 +03:00
f455716548 Bug fix (#198) 2021-07-14 16:09:10 +03:00
83d5a7b2a3 Introducing top and bottom types (#199)
* - Added top and bottom types
- Added nil for empty streams, options, arrays
- Fixed product variance

* Version bump due to syntax changes in the type system
2021-07-13 17:43:24 +03:00
fbc34a793a Add config to JS backend similar to it's TS counterpart (#196) 2021-07-07 14:45:20 +03:00
d24e77b5e3 Removing IO from compiler submodule (#186)
* Removing IO from compiler submodule (wip)

* move targets to cli
2021-06-30 09:21:40 +03:00
f15bd0558b Cli/compiler refactoring (#184) 2021-06-29 16:31:20 +03:00
5e1ef6e227 Abstract backend (#182) 2021-06-25 10:25:27 +03:00
bbf47628c6 Co expression (#181) 2021-06-24 11:01:59 +03:00
c48bf5c488 Disable automatic draft releases 2021-06-22 13:22:54 +03:00
3236f91db2 101 last line comment (#179) 0.1.7 2021-06-22 11:32:27 +03:00
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
f71de81cb4 test kit as separate project (#178) 2021-06-18 17:01:31 +03:00
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
8586d70364 148 topology fix (#169) 2021-06-17 17:32:38 +03:00
298d7cf767 157 multiline function definitions (#172) 2021-06-16 15:56:58 +03:00
29af3e7875 170 pass constants as arguments (#171) 2021-06-15 20:44:55 +03:00
221cc5ca33 Generate optional ttl argument in typescript functions (#164) 2021-06-15 13:02:46 +03:00
ee23ffeb9e Introduce Catch espression (#162) 2021-06-10 16:33:01 +03:00
6522deccb4 Javascript backend (#161)
Add javascript backend
2021-06-10 13:43:46 +03:00
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
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
15f582eaf9 Fix: resolve function return name (#154) 0.1.4 2021-06-04 15:57:53 +03:00
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
6a96098227 possible to use file as input (#152) 2021-06-03 15:45:09 +03:00
6f6299e035 Simple opt-as-an-array fix (#149)
* Simple opt-as-an-array fix

* Last error model

* Test fixed
2021-06-03 10:16:07 +03:00
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
d1e76c1fd3 fix paths finally (#145) 0.1.3 2021-06-01 20:43:44 +03:00
378d154ff7 Added bang op to get array items by index (#144) 2021-06-01 20:07:09 +03:00
6ba9c13c63 extension for air target (#143) 0.1.2 2021-06-01 12:34:13 +03:00
582dab20b7 Hotfix delete println (#140) 2021-05-31 22:00:26 +03:00