aqua/README.md
2021-03-22 11:48:10 +03:00

1.2 KiB

Aquamarine HLL

The high level language that compiles to AIR and some wrappers in the host language (e.g. TypeScript).

Build and use jar file

To build a file use this command:

sbt assembly

jar file will be in target/scala-2.13/aqua-hll.jar

Run:

java -jar aqua-hll.jar path/to/input/dir path/to/output/dir

input directory should contain files with aqua scripts

TODO

  • Lambda
  • Build data types: extend
  • Platform-specific Predef with Return ability
  • Implementation for abilities
  • Abilities passing
  • Print syntax errors better way
  • For the offset, find a token

Wishlist

if aaa == bbb: -- !=

else:

try:

catch err:

$streams

4...) while x: backpressure...

use "smth.aqua" as Smth

ability passing: func x {Ab} -> y func x {Ab} -> y {Foo} func x -> y {Foo}

on Ability x:

on browserId via relayId:

compilation targets

  • ts
  • pure air
  • ???????????????????

use blueprint "blueprint id" as ServiceName

kademlia in Aqua onKadNeighborhood(kad_key, replicationFactor) do: ....

better lambda expressions

@-expression

alias AuthToken: bool

func foo(token: AuthToken @check[from app.auth])

  1. FUTURE generate facade modules from Aqua