Commit Graph

312 Commits

Author SHA1 Message Date
Dima
621e06dd9c
Fixes version display and empty module compilation (fixes #264 #265) (#274) 2021-09-07 11:02:36 +03:00
Dima
835a7f7672
add .js to import (#267) 2021-09-03 14:37:10 +03:00
Dima
7982f04847
increase version to publish aqua-cli (#262) 2021-09-02 16:15:37 +03:00
Dima
b0d76b9631
just delete asInstanceOf (#259) 2021-09-01 13:27:25 +03:00
Dmitry Kurinskiy
3e7b11db10
Imports/exports fixes (#258)
* Fix for export in headerless file

* Ability arrow resolution bugfix

* Trying to reproduce a bug

* Allow dots in module declaration
2021-08-31 13:05:26 +03:00
Dima
bc461457da
Add JS build to package and to integration tests (#256) 2021-08-31 12:20:22 +03:00
Dima
5fd54b5656
make import flag optional (#255) 2021-08-27 16:23:52 +03:00
Dima
dae234dc5a
Performance improvement: single parser instance (#254) 2021-08-27 15:57:44 +03:00
Dmitry Kurinskiy
7e0fe470ec
Support for the new (ap instruction (#241) 2021-08-24 18:59:51 +03:00
folex
2124b88442
JS Backend: add the missing single quote (') (#252) 2021-08-24 14:51:33 +03:00
Dmitry Kurinskiy
3de8571be9
Imports bugfixes (#249) 2021-08-21 11:10:38 +03:00
Dmitry Kurinskiy
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
2021-08-20 18:03:47 +03:00
Dima
296c64836d
Js build (#247) 2021-08-18 13:06:14 +03:00
Dima
f59a93ac27
filter non-aqua files (#246) 2021-08-18 11:49:53 +03:00
Dmitry Kurinskiy
96bc76ef2a
Separate Transform from Model (#244)
* Separate Result from Model

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

* TypeScriptService

* ServiceRes
2021-08-16 16:59:36 +03:00
folex
38fb824b68
CI: publish to NPM as 'aqua' & 'aqua-cli' (#242) 2021-08-13 19:16:14 +03:00
folex
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
Dima
e2da2e90d7
Crossprojects for JVM and JS platforms (#237) 2021-08-11 19:53:36 +03:00
folex
50aa4db4e8
CI: Do not trigger releases on push (#239) 2021-08-11 18:22:52 +03:00
Dmitry Kurinskiy
f7aa118006
Multireturn bugfix (#238) 2021-08-11 10:55:25 +03:00
Dmitry Kurinskiy
3eb3ecc221
Return many values from a single function (#229) 2021-08-09 21:33:55 +03:00
Dmitry Kurinskiy
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
Dima
4ccac9bf0e
Migration to Scala 3 (#228) 2021-08-06 13:33:58 +03:00
Dima
ee67d038ad
53 219 issues (#224)
* functions that only return literal, don't parse top-bottom

* empty funcOp to FuncOps

* version

* fix
2021-08-04 13:16:42 +03:00
Dmitry Kurinskiy
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>
2021-08-03 17:23:28 +03:00
Dima
2eb4598093
Return T | null on optional results (#221) 2021-07-29 13:49:25 +03:00
folex
b6989058fc
Automatically generate changelog (#220) 2021-07-27 16:41:23 +03:00
Dima
81cd3a2c71
200 202 stream resolving (#213) 2021-07-27 09:58:33 +03:00
Dima
3bbf089e87
209 Push to stream (#214) 2021-07-26 14:31:17 +03:00
Dima
f683a6b3cf
Fix incorrect compilation with arguments duplication (#211) 2021-07-22 12:08:55 +03:00
folex
c292ce05d7
Use backwards compatible syntax for config.ttl (#206) 2021-07-17 17:33:19 +03:00
Dima
f455716548
Bug fix (#198) 2021-07-14 16:09:10 +03:00
Dmitry Kurinskiy
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
Pavel
fbc34a793a
Add config to JS backend similar to it's TS counterpart (#196) 2021-07-07 14:45:20 +03:00
Dmitry Kurinskiy
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
Dima
f15bd0558b
Cli/compiler refactoring (#184) 2021-06-29 16:31:20 +03:00
Dima
5e1ef6e227
Abstract backend (#182) 2021-06-25 10:25:27 +03:00
Dmitry Kurinskiy
bbf47628c6
Co expression (#181) 2021-06-24 11:01:59 +03:00
folex
c48bf5c488 Disable automatic draft releases 2021-06-22 13:22:54 +03:00
Dima
3236f91db2
101 last line comment (#179) 2021-06-22 11:32:27 +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
Dima
298d7cf767
157 multiline function definitions (#172) 2021-06-16 15:56:58 +03:00
Dima
29af3e7875
170 pass constants as arguments (#171) 2021-06-15 20:44:55 +03:00
Dima
221cc5ca33
Generate optional ttl argument in typescript functions (#164) 2021-06-15 13:02:46 +03:00
Dmitry Kurinskiy
ee23ffeb9e
Introduce Catch espression (#162) 2021-06-10 16:33:01 +03:00
Pavel
6522deccb4
Javascript backend (#161)
Add javascript backend
2021-06-10 13:43:46 +03:00