Skip to content

ASUNArray-Schema Unified Notation

Fewer tokens than JSON. Compact schema-first rows. Human-readable. LLM-native.

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 is written once. Each row after : is pure data. That is where most of ASUN's token and parsing advantage comes from.

Quick Install

toml
[dependencies]
asun = "1.0"
serde = { version = "1", features = ["derive"] }
bash
go get github.com/asunLab/asun-go
bash
pip install asun
bash
npm i @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
// Header-only: include asun.h + link asun.c
#include "asun.h"
cmake
# Header-only or via Conan
find_package(asun-cpp REQUIRED)
zig
// build.zig.zon — add asun dependency
zig fetch https://github.com/asunLab/asun-zig/archive/v1.0.0.tar.gz --save

Performance

ASUN has a structural advantage over JSON on repeated, schema-shaped data, but the multiplier is not universal across languages.

  • Native implementations usually show the strongest gains.
  • Managed runtimes can still be highly competitive.
  • Dynamic runtimes often benefit on repetitive rows, but less consistently.
  • Small single-object payloads may show little or no win for text mode.

Use the performance overview for the model, and benchmark notes for implementation-specific context.

Released under the MIT License.