Skip to content
@aster-cloud

Aster Cloud

Aster Lang

用你团队说的语言写决策规则。 一门务实、类型安全的受控自然语言(CNL),把业务规则写成人类可读、可审计、可回放的源码——双引擎(Java + TypeScript)编译到同一份中间表示,字节级一致地执行。

Rules in the language your team speaks. Aster is a pragmatic, type-safe controlled natural language (CNL) for decision logic. Write business rules as human-readable, auditable, replayable source — compiled by two independent engines (Java + TypeScript) to one IR, producing byte-identical results.

Module Pricing.

Rule discountedPrice given amount as Int, produce Int:
  If amount greater than 100
    Return amount times 90 divided by 100.
  Return amount.

amount = 200180。同一条规则可用中文/德文/印地文关键词书写,编译结果完全一致。

从哪开始 · Start Here

想做什么 去哪
读文档、上手教程 aster-dev(文档站 + Playground)
在浏览器/Node 里编译规则 aster-lang-tspnpm add @aster-cloud/aster-lang-ts
JVM 上嵌入编译器 aster-lang-core

仓库地图 · Repository Map

语言与引擎

  • aster-lang-core — Java 核心编译器:多语言 CNL 源码 → 类型安全的 Core IR。生态的根。
  • aster-lang-ts — TypeScript 编译器:浏览器/Node 端的第二引擎,与 core 双引擎 parity。
  • aster-lang-truffle — GraalVM Truffle 运行时(依赖 core + runtime)。
  • aster-lang-runtime — 运行时支持库。

平台与验证

语言包 · Lexicons

依赖关系 · Dependency Graph

        语言包 (locales: en/zh/de, hi)      platform(版本编目)
              │  SPI 插件加载                    │ 统一版本
              ▼                                  ▼
        aster-lang-core  ────────────────►  被各 JVM 仓依赖
              │
              ├──► aster-lang-truffle   (GraalVM Truffle 运行时;依赖 core + runtime)
              └──► aster-lang-runtime

        aster-lang-ts  (独立的 TypeScript 引擎,与 core 双引擎 parity)

跨仓构建顺序 · Build Order

JVM 仓有前后依赖。从零构建时:

  1. aster-lang-platform./gradlew publishToMavenLocal(版本编目先就位)
  2. aster-lang-core./gradlew publishToMavenLocal(被下游依赖)
  3. aster-lang-runtimepublishToMavenLocal
  4. aster-lang-truffle(依赖 core + runtime)
  5. 其余仓按各自 README

aster-lang-ts 独立:pnpm install && pnpm run build

各仓的详细命令、环境要求、贡献流程见其 README.md / CONTRIBUTING.md

许可证 · License

全部开源仓采用 Apache-2.0。安全问题请走各仓的 Security 标签页(Private Vulnerability Reporting)。


注:aster-cloud / aster-api 是 Aster Lang 的闭源商业实现,不在本开源生态内。

Pinned Loading

  1. aster-lang-zh aster-lang-zh Public archive

    Java

  2. aster-lang-en aster-lang-en Public archive

    Java

  3. aster-lang-de aster-lang-de Public archive

    Java

Repositories

Showing 10 of 18 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…