Skip to content

ASUN数组模式对象符号

比 JSON 更省 Token。Schema 只写一次。人类可读,也适合 LLM。

ASUN

ASUN vs JSON

json
{
  "users": [
    { "id": 1, "name": "Alice", "active": true },
    { "id": 2, "name": "Bob", "active": false },
    { "id": 3, "name": "Carol", "active": true }
  ]
}
asun
[{id@int, name@str, active@bool}]:
  (1, Alice, true),
  (2, Bob,   false),
  (3, Carol, true)

Schema 只写一次,: 后面每一行都是纯数据。ASUN 的大部分 token 与解析优势,都来自这个结构设计。

快速安装

toml
[dependencies]
asun = "1.0"
serde = { version = "1", features = ["derive"] }
bash
go get github.com/asunLab/asun-go
bash
pip install asun
bash
npm install @athanx/asun
bash
implementation 'io.asun:asun:1.0.0'
swift
// Package.swift
.package(url: "https://github.com/asunLab/asun-swift", from: "1.0.0")
bash
dotnet add package Asun
yaml
# pubspec.yaml
dependencies:
  asun: ^1.0.0
bash
pecl install asun
c
// 头文件方式:引入 asun.h + 链接 asun.c
#include "asun.h"
cmake
# 头文件方式或通过 Conan
find_package(asun-cpp REQUIRED)
zig
// build.zig.zon — 添加 asun 依赖
zig fetch https://github.com/asunLab/asun-zig/archive/v1.0.0.tar.gz --save

性能说明

ASUN 相比 JSON 的结构优势是稳定的,但性能倍数不是所有语言都一样。

  • 原生实现通常收益最大。
  • 托管运行时也可能表现很强。
  • 动态语言在重复结构数据上往往仍有明显收益,但不一定每次都领先。
  • 对很小的单对象文本载荷,收益可能不明显。

先看 性能概览,再看 benchmark notes 里的实现级说明。

基于 MIT 许可证发布。