diff --git a/.claude/agents/arm-architecture-expert.md b/.claude/agents/arm-architecture-expert.md
index d115b123..46afa3c0 100644
--- a/.claude/agents/arm-architecture-expert.md
+++ b/.claude/agents/arm-architecture-expert.md
@@ -36,6 +36,8 @@ You are a world-class authority on the Arm architecture and an elite Rust system
- https://developer.arm.com/documentation/ddi0487/mb — Arm Architecture Reference Manual for A-profile (the "Arm ARM", DDI 0487). Your primary spec. When you justify an encoding, cite the instruction's encoding diagram (e.g. "ADD (immediate) — sf|op|S|...|imm12|Rn|Rd"). Use WebFetch for sections.
- AAPCS64 — the Procedure Call Standard for AArch64: argument/result registers, stack alignment, callee-saved set. Fetch when classifying arguments.
- For Apple Silicon specifics (arm64e/arm64 differences, platform calling conventions), cross-check Apple's "Writing ARM64 Code for Apple Platforms".
+ - https://github.com/aidansteele/osx-abi-macho-file-format-reference
+ - https://github.com/apple-oss-distributions/xnu/blob/8d741a5de7ff4191bf97d57b9f54c2f6d4a15585/EXTERNAL_HEADERS/mach-o/loader.h
## Your code — know every line
diff --git a/Cargo.lock b/Cargo.lock
index 65e654b0..744e5009 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -8187,6 +8187,7 @@ dependencies = [
"zo-codegen-backend",
"zo-interner",
"zo-sir",
+ "zo-token",
"zo-ty",
"zo-value",
]
diff --git a/README.md b/README.md
index 43664ca8..60aa64c2 100644
--- a/README.md
+++ b/README.md
@@ -12,7 +12,7 @@ zo (pronounced `/zuː/` just like "zoo") iS A PRACTiCAL, LiGHTWEiGHT, CROSS-PLAT
**JOiN THE DEVOLUTiON.**
-[home](https://zo.compilords.house) — [install](./crates/compiler/zo-notes/public/guidelines/01-install.md) — [initiation](https://zo.compilords.house/initiation) — [news](https://zo.compilords.house/news) — [discord](https://discord.gg/JaNc4Nk5xw)
+[home](https://zo.compilords.house) — [install](./crates/compiler/zo-notes/public/guidelines/01-install.md) — [initiation](https://zo.compilords.house/initiation) — [spec](https://zo.compilords.house/spec) — [news](https://zo.compilords.house/news) — [discord](https://discord.gg/JaNc4Nk5xw)
## usage.
@@ -49,6 +49,7 @@ ONE LANGUAGE. ONE COMPiLER. ONE BiNARY. ONE WiNDOW. ALL PLATFORMS — SAME SOURC
---
+
DEV MACHiNE:
```
@@ -65,7 +66,18 @@ Available Memory — 9.4 GB
> *This project is about having fun again. It is maintained by a small group of volunteers during their spare time. We're exploring. zo is not the new X or better than Y, zo is just different. Period. Be gentle.*
> [!CAUTION]
-> *For transparency: regarding Ai usage, we're using Ai to build zo based on our architecture and specification (made by humans). The compiler currently covers over 1500 unit and integration tests.*
+> *For transparency: regarding Ai usage, we're using Ai to build zo based on our architecture and [specification](https://zo.compilords.house/spec) (made by humans). The compiler currently covers over 1500 unit and integration tests.*
+
+## gallery.
+
+
+
+
+
+
+
+
+
## sponsors & supports.
diff --git a/apps/site/messages/de.json b/apps/site/messages/de.json
index 0218c23f..7ff0cc69 100644
--- a/apps/site/messages/de.json
+++ b/apps/site/messages/de.json
@@ -7,19 +7,20 @@
"benchmarks_title": "## benchmarks",
"community_description": "Ein Spielplatz für Compiler-Nerds, Frontend-Hacker und Kreative. Öffne ein Issue, oder sag Hi auf Discord.",
"community_title": "## gemeinschaft",
- "features_fast_content": "Von Grund auf mit modernen Compiler-Techniken gebaut für sofortige Ausführung und schnelles Debugging mit hilfreichen Fehlermeldungen.",
+ "features_fast_content": "Von Grund auf mit modernen Compiler-Techniken gebaut für sofortige Builds und schnelles Debugging mit hilfreichen Fehlermeldungen.",
"features_fast_title": "Schnell",
- "features_integrated_content": "Eine komplette Workstation mit eingebauten Werkzeugen — Paketmanager fret und Texteditor codelord.",
+ "features_integrated_content": "Eine komplette Workstation mit eingebauten Werkzeugen — Paketmanager fret und Texteditor codelord.",
"features_integrated_title": "Integriert",
"features_quote": "Weniger Arbeit machen, indem man keine Mühe verschwendet.",
- "features_safe_content": "Statisch & stark typisiert. Nutzt Green- und OS-Threads, gekapselt in nursery task scopes; keine leaked threads, keine data races.",
+ "features_safe_content": "Statisch & stark typisiert, ohne null und ohne rohe Zeiger. Green- und OS-Threads laufen in nursery task scopes — keine leaked threads, kein geteilter veränderbarer Zustand.",
"features_safe_title": "Sicher",
"features_title": "## funktionen",
- "features_unified_content": "Schreib Ui einmal mit ZSX — ziele auf nativ gpu oder Web dom.",
+ "features_unified_content": "Schreib Ui einmal mit ZSX — ziele auf Desktop gpu, Mobile uikit oder Web dom.",
"features_unified_title": "Einheitlich",
"foundations_description": "Angetrieben von modernen, verlässlichen Fundamenten für eine hochleistungsfähige Grafik- und Web-Integration.",
"foundations_title": "## fundamente",
"header_initiation": "Einführung",
+ "header_spec": "Spec",
"header_news": "News",
"hero_tagline": "Verwandle deine Gedanken sofort in typsichere Software und Ui.",
"initiation_authors": "invisageable & die compilords",
@@ -30,7 +31,7 @@
"initiation_subtitle": "Eine Einführung in zo.",
"initiation_title": "Einführung",
"initiation_translators": "Übersetzt von ...",
- "manifesto_content": "zo ist ein Compiler eines Compilers in einem weiteren riesigen Compiler, der selbst in einem gigantischen Compiler steckt.\n\nZiel des Projekts ist es, die Entwickler-Experience zu verbessern und das Bauen von Software, die deine Kreativität widerspiegelt, mühelos zu machen. Wir fokussieren uns auf die Details, die zählen, und öffnen neue Dimensionen im Software-Universum, in denen das Verwandeln deiner Gedanken in Programme nicht nur einfach, sondern angenehm ist.\n\nzo ist ein komplettes Ökosystem, das dir die Schlüssel in die Hand gibt. Endlich hast du die Kontrolle über deine Workstation. Du wirst nie wieder im Blindflug arbeiten müssen. Unsere Werkzeuge liefern dir alle Informationen, die du für dein Programm brauchst — von Design bis Auslieferung.\n\nWir stellen uns gegen die ausufernde Software-Uniformität. zo vereint Web und GPU — nicht indem das Web in ein Canvas gezwungen wird, sondern durch das Zusammenspiel von Flexbox-Layouts mit roher GPU-Power. Wir tun alles, um die Grenzen der Innovation auszureizen.\n\nSchließ dich der Devolution an.",
+ "manifesto_content": "Ziel des Projekts ist es, die Entwickler-Experience zu verbessern und das Bauen von Software, die deine Kreativität widerspiegelt, mühelos zu machen. Wir fokussieren uns auf die Details, die zählen, wo das Verwandeln deiner Gedanken in Programme nicht nur einfach, sondern angenehm ist.",
"manifesto_title": "## manifest",
"nav_benchmarks": "Benchmarks",
"news_description": "Alles rund um zo: Releases, Meilensteine und Design-Notizen.",
@@ -50,8 +51,8 @@
"oss_merged_prs": "zusammengeführte PRs",
"oss_stars": "Sterne",
"oss_title": "## oss",
- "prologue_description": "Eine Sprache zum Ausliefern, Ausführen und Erstellen von nativen und Web-Anwendungen, optimiert auf Geschwindigkeit. zo ist ein funktionsreiches Ökosystem mit Fokus auf hohe Leistung, Einfachheit und datenorientiertes Design.",
- "prologue_punchline": "Eine Sprache. Ein Compiler. Eine Binärdatei. Nativ oder Web — derselbe Quellcode.",
+ "prologue_description": "zo (ausgesprochen /zu:/ wie „zoo“) ist eine praktische, leichtgewichtige, plattformübergreifende und universelle Programmiersprache. Zum Ausliefern, Ausführen und Erstellen typsicherer Desktop-, Mobile- und Web-Anwendungen aus einer einzigen Codequelle.",
+ "prologue_punchline": "Eine Sprache. Ein Compiler. Eine Binärdatei. Ein Fenster. Alle Plattformen — derselbe Quellcode.",
"prologue_title": "Die Programmiersprache zo.",
"purpose_description": "Kreative Entwickler sollten nicht zwischen einfachem Ui-Code und hoher Leistung wählen müssen. APIs sind zerstückelt, Werkzeuge sind zu komplex, die Entwicklungsschleife ist zu langsam. Wir haben zo als den Klebstoff entwickelt — eine einzige, intuitive Sprache, mit der du deine kreativen Gedanken sofort in robuste, plattformübergreifende Software verwandelst.",
"purpose_quote_sentence": "Warum sich mit langsamen Compilern abfinden? Macht sie einfach schneller.",
diff --git a/apps/site/messages/en.json b/apps/site/messages/en.json
index 549e4a81..d237c255 100644
--- a/apps/site/messages/en.json
+++ b/apps/site/messages/en.json
@@ -3,23 +3,24 @@
"benchmarks_description": "Most of the compilers are 2-5x slower than they could be. zo is the fastest next-gen compiler tool to enhance the programmers productivity.",
"benchmarks_disclaimer_methodology": "@methodology-and-full-numbers",
"benchmarks_disclaimer_workload": "Workload: 10,000 lines of code compiled to native ARM64 binary (including Hindley-Milner type inference, monomorphization, type checking, constant folding, propagation, dead code elimination and link passes).",
- "benchmarks_quote_sentence": "The faster your software runs, the less power his consumed.",
+ "benchmarks_quote_sentence": "The faster your software runs, the less power is consumed.",
"benchmarks_title": "## benchmarks",
"community_description": "A playground for compiler nerds, frontend hackers, and creatives. Open an issue, or come say hello on Discord.",
"community_title": "## community",
- "features_fast_content": "Built from scratch using modern compiler techniques for instant execution and rapid debugging with helpful error messages.",
+ "features_fast_content": "Built from scratch using modern compiler techniques for instant builds and rapid debugging with helpful error messages.",
"features_fast_title": "Fast",
- "features_integrated_content": "A complete workstation with built-in tools — package manager fret and text editor codelord.",
+ "features_integrated_content": "A complete workstation with built-in tools — package manager fret and text editor codelord.",
"features_integrated_title": "Integrated",
"features_quote": "Do less work by not wasting effort.",
- "features_safe_content": "Statically & strongly typed. Uses green and OS threads wrapped in nursery task scopes; no leaked threads, no data races.",
+ "features_safe_content": "Statically & strongly typed, with no null and no raw pointers. Green and OS threads run in nursery task scopes — no leaked threads, no shared mutable state.",
"features_safe_title": "Safe",
"features_title": "## features",
- "features_unified_content": "Write Ui once with ZSX — target native gpu or the web dom.",
+ "features_unified_content": "Write Ui once with ZSX — target desktop gpu, mobile uikit, or the web dom.",
"features_unified_title": "Unified",
"foundations_description": "Powered by modern and reliable foundations to deliver high-performance graphics and web integration.",
"foundations_title": "## foundations",
"header_initiation": "Initiation",
+ "header_spec": "Spec",
"header_news": "News",
"hero_tagline": "Turn your thoughts into type-safe software and Ui instantly.",
"initiation_authors": "invisageable & the compilords",
@@ -30,7 +31,7 @@
"initiation_subtitle": "An initiation to zo.",
"initiation_title": "Initiation",
"initiation_translators": "Translated by ...",
- "manifesto_content": "zo is a compiler of a compiler inside another giant compiler that is itself inside a gigantic compiler.\n\nThe aim of the project is to enhance the developer experience, making it seamless to build software that reflects your creativity. We focus on details that matter, opening new dimensions in the software universe where transforming your thoughts into programs is not just easy, but enjoyable.\n\nzo is a complete ecosystem that gives you the keys. You finally have control over your workstation. You'll never have to work blind again. Our tools provide all the information you need for your program, from design to delivery.\n\nWe are against abundant software uniformity. zo unifies the web and the GPU — not by forcing the web into a canvas, but by harmonizing Flexbox layouts with raw GPU power. We will do everything we can to push the boundaries of innovation to the limit.\n\nJoin the devolution.",
+ "manifesto_content": "The aim of the project is to enhance the developer experience, making it seamless to build software that reflects your creativity. We focus on details that matter, where transforming your thoughts into programs is not just easy, but enjoyable.",
"manifesto_title": "## manifesto",
"nav_benchmarks": "Benchmarks",
"news_description": "Everything related to zo, releases, milestones and design notes.",
@@ -50,10 +51,10 @@
"oss_merged_prs": "merged PRs",
"oss_stars": "stars",
"oss_title": "## oss",
- "prologue_description": "A language to ship, run and build native and web applications optimized for speed. zo is a feature-rich ecosystem focus on high-performance, simplicity and data-oriented.",
- "prologue_punchline": "One language. One compiler. One binary. Native or Web — same source.",
+ "prologue_description": "zo (pronounced /zu:/ just like “zoo”) is a practical, lightweight, cross-platform, general-purpose programming language. To ship, run and build type-safe desktop, mobile and web applications with one code source.",
+ "prologue_punchline": "One language. One compiler. One binary. One window. All platforms — same source.",
"prologue_title": "The zo programming language.",
- "purpose_description": "Creative developers shouldn't have to choose between writing simple UI code and getting high performance. APIs are disjointed, tools are overly complex, and the development loop is too slow. We built zo to be the glue — a single, intuitive language that lets you turn your creative thoughts into robust, cross-platform software instantly.",
+ "purpose_description": "Creative developers shouldn't have to choose between simple UI code and high performance. APIs are disjointed, tools are overly complex, and the development loop is too slow. We built zo to be the glue — a single, intuitive language that lets you turn your creative thoughts into robust, cross-platform software instantly.",
"purpose_quote_sentence": "Why accept slow compilers? Just make them faster.",
"purpose_title": "## purpose",
"reachout_copyright": "Compilords© 2024 — present.",
diff --git a/apps/site/messages/fr.json b/apps/site/messages/fr.json
index cc3f5b0e..d0139fc6 100644
--- a/apps/site/messages/fr.json
+++ b/apps/site/messages/fr.json
@@ -7,19 +7,20 @@
"benchmarks_title": "## benchmarks",
"community_description": "Un terrain de jeu pour les geeks de compilateurs, les hackers du frontend, et les créatifs. Ouvre une issue, ou viens dire bonjour sur Discord.",
"community_title": "## communauté",
- "features_fast_content": "Construit à partir de zéro avec des techniques de compilateur modernes pour une exécution instantanée et un débogage rapide avec des messages d'erreur utiles.",
+ "features_fast_content": "Construit à partir de zéro avec des techniques de compilateur modernes pour des builds instantanés et un débogage rapide avec des messages d'erreur utiles.",
"features_fast_title": "Rapide",
- "features_integrated_content": "Une station de travail complète avec des outils intégrés — gestionnaire de paquets fret et éditeur de texte codelord.",
+ "features_integrated_content": "Une station de travail complète avec des outils intégrés — gestionnaire de paquets fret et éditeur de texte codelord.",
"features_integrated_title": "Intégré",
"features_quote": "Travailler moins en évitant de gaspiller des efforts.",
- "features_safe_content": "Statiquement & fortement typé. Utilise des threads verts et OS encapsulés dans des nursery task scopes ; pas de threads perdus, pas de courses de données.",
+ "features_safe_content": "Statiquement & fortement typé, sans null ni pointeurs bruts. Les threads verts et OS s'exécutent dans des nursery task scopes — pas de threads perdus, pas d'état mutable partagé.",
"features_safe_title": "Sûr",
"features_title": "## fonctionnalités",
- "features_unified_content": "Écris ton Ui une fois avec ZSX — cible le natif gpu ou le web dom.",
+ "features_unified_content": "Écris ton Ui une fois avec ZSX — cible le desktop gpu, le mobile uikit ou le web dom.",
"features_unified_title": "Unifié",
"foundations_description": "Propulsé par des fondations modernes et fiables pour offrir une intégration haute performance graphique et web.",
"foundations_title": "## fondations",
"header_initiation": "Initiation",
+ "header_spec": "Spec",
"header_news": "Actus",
"hero_tagline": "Transforme tes pensées en logiciels à typage sûr et en UI instantanément.",
"initiation_authors": "invisageable & les compilords",
@@ -30,7 +31,7 @@
"initiation_subtitle": "Une initiation à zo.",
"initiation_title": "Initiation",
"initiation_translators": "Traduit par ...",
- "manifesto_content": "zo est un compilateur d'un compilateur à l'intérieur d'un autre compilateur géant lui-même à l'intérieur d'un compilateur gigantesque.\n\nL'objectif du projet est d'améliorer l'expérience développeur, en rendant fluide la création de logiciels qui reflètent ta créativité. Nous nous concentrons sur les détails qui comptent, en ouvrant de nouvelles dimensions dans l'univers du logiciel où transformer tes pensées en programmes n'est pas juste facile, mais agréable.\n\nzo est un écosystème complet qui te donne les clés. Tu as enfin le contrôle sur ton poste de travail. Tu n'auras plus jamais à travailler à l'aveugle. Nos outils fournissent toutes les informations dont tu as besoin pour ton programme, de la conception à la livraison.\n\nNous sommes contre l'uniformité abondante des logiciels. zo unifie le web et le GPU — pas en forçant le web dans un canvas, mais en harmonisant les layouts Flexbox avec la puissance brute du GPU. Nous ferons tout pour repousser les limites de l'innovation.\n\nRejoins la dévolution.",
+ "manifesto_content": "L'objectif du projet est d'améliorer l'expérience développeur, en rendant fluide la création de logiciels qui reflètent ta créativité. Nous nous concentrons sur les détails qui comptent, où transformer tes pensées en programmes n'est pas juste facile, mais agréable.",
"manifesto_title": "## manifeste",
"nav_benchmarks": "Benchmarks",
"news_description": "Tout ce qui concerne zo : releases, étapes clés et notes de design.",
@@ -50,10 +51,10 @@
"oss_merged_prs": "PRs fusionnées",
"oss_stars": "étoiles",
"oss_title": "## oss",
- "prologue_description": "Un langage pour livrer, exécuter et créer des applications natives et web optimisées pour la vitesse. zo est un écosystème riche en fonctionnalités, axé sur la haute performance, la simplicité et l'orienté-données.",
- "prologue_punchline": "Un langage. Un compilateur. Un binaire. Natif ou Web — même source.",
+ "prologue_description": "zo (prononcé /zu:/ comme « zoo ») est un langage de programmation pratique, léger, multiplateforme et généraliste. Pour livrer, exécuter et construire des applications à typage sûr pour le desktop, le mobile et le web, à partir d'une seule source de code.",
+ "prologue_punchline": "Un langage. Un compilateur. Un binaire. Une fenêtre. Toutes les plateformes — même source.",
"prologue_title": "Le langage de programmation zo.",
- "purpose_description": "Les développeurs créatifs ne devraient pas avoir à choisir entre écrire du code Ui simple et obtenir des performances élevées. Les API sont décousues, les outils sont trop complexes et la boucle de développement est trop lente. Nous avons conçu zo pour être la glue — un langage unique et intuitif qui te permet de transformer tes pensées créatives en logiciels robustes et multi-plateformes instantanément.",
+ "purpose_description": "Les développeurs créatifs ne devraient pas avoir à choisir entre du code Ui simple et des performances élevées. Les API sont décousues, les outils sont trop complexes et la boucle de développement est trop lente. Nous avons conçu zo pour être la glue — un langage unique et intuitif qui te permet de transformer tes pensées créatives en logiciels robustes et multi-plateformes instantanément.",
"purpose_quote_sentence": "Pourquoi accepter des compilateurs lents ? Rendez-les plus rapides, c'est tout.",
"purpose_title": "## objectif",
"reachout_copyright": "Compilords© 2024 — présent.",
diff --git a/apps/site/messages/ja.json b/apps/site/messages/ja.json
index f658dd3d..ca5895f1 100644
--- a/apps/site/messages/ja.json
+++ b/apps/site/messages/ja.json
@@ -7,19 +7,20 @@
"benchmarks_title": "## ベンチマーク",
"community_description": "コンパイラオタク、フロントエンドハッカー、クリエイターのための遊び場。issue を開くか、Discord で声をかけて。",
"community_title": "## コミュニティ",
- "features_fast_content": "現代的なコンパイラ技術でゼロから構築し、即時実行と、分かりやすいエラーメッセージによる高速なデバッグを実現。",
+ "features_fast_content": "現代的なコンパイラ技術でゼロから構築し、瞬時のビルドと、分かりやすいエラーメッセージによる高速なデバッグを実現。",
"features_fast_title": "高速",
- "features_integrated_content": "組み込みツール付きの完全なワークステーション — パッケージマネージャ fret とテキストエディタ codelord。",
+ "features_integrated_content": "組み込みツール付きの完全なワークステーション — パッケージマネージャ fret とテキストエディタ codelord。",
"features_integrated_title": "統合",
"features_quote": "余計な労力を省いて、仕事量を減らせ。",
- "features_safe_content": "静的かつ強い型付け。Green スレッドと OS スレッドを nursery task scopes でラップ。スレッドのリーク無し、データ競合無し。",
+ "features_safe_content": "静的かつ強い型付けで、null なし・生ポインタなし。Green スレッドと OS スレッドは nursery task scopes で動作 — スレッドのリーク無し、共有可変状態なし。",
"features_safe_title": "安全",
"features_title": "## 機能",
- "features_unified_content": "ZSX で Ui を一度書けば、ネイティブ gpu でも Web dom でも動く。",
+ "features_unified_content": "ZSX で Ui を一度書けば、デスクトップ gpu・モバイル uikit・Web dom のどこでも動く。",
"features_unified_title": "統一",
"foundations_description": "現代的で信頼できる基盤に支えられ、高性能なグラフィックスとウェブ統合を実現する。",
"foundations_title": "## 基盤",
"header_initiation": "入門",
+ "header_spec": "仕様",
"header_news": "ニュース",
"hero_tagline": "あなたの考えを、型安全なソフトウェアと Ui に即座に変える。",
"initiation_authors": "invisageable と compilords",
@@ -30,7 +31,7 @@
"initiation_subtitle": "zo への入門。",
"initiation_title": "入門",
"initiation_translators": "翻訳者 ...",
- "manifesto_content": "zo は、巨大なコンパイラの中にあるコンパイラの中の、さらに巨大なコンパイラの中のコンパイラだ。\n\nこのプロジェクトの目的は、開発者体験を高め、あなたの創造性を映すソフトウェアづくりをシームレスにすることだ。私たちは大事なディテールに集中し、考えをプログラムに変えることが簡単なだけでなく、楽しいものになるよう、ソフトウェア宇宙に新たな次元を開いていく。\n\nzo は鍵をあなたに手渡す、完全なエコシステムだ。ようやくあなたは自分のワークステーションを支配できる。もう手探りで作業する必要はない。私たちのツールは、設計から配信まで、プログラムに必要なあらゆる情報を提供する。\n\n私たちはあふれかえるソフトウェアの画一化に抗う。zo はウェブとGPUを統合する — ウェブをキャンバスに押し込めるのではなく、Flexbox レイアウトと生の GPU パワーを調和させることで。革新の境界を限界まで押し広げるために、できる限りのことを尽くす。\n\nディヴォリューションに参加せよ。",
+ "manifesto_content": "このプロジェクトの目的は、開発者体験を高め、あなたの創造性を映すソフトウェアづくりをシームレスにすることだ。私たちは大事なディテールに集中し、考えをプログラムに変えることを、簡単なだけでなく楽しいものにする。",
"manifesto_title": "## 宣言",
"nav_benchmarks": "ベンチマーク",
"news_description": "zo に関するすべて:リリース、マイルストーン、デザインノート。",
@@ -50,8 +51,8 @@
"oss_merged_prs": "マージ済み PR",
"oss_stars": "スター",
"oss_title": "## oss",
- "prologue_description": "ネイティブとウェブのアプリケーションを、速度に最適化された形で出荷・実行・構築するための言語。zo は高性能・シンプルさ・データ指向に特化した、機能豊富なエコシステムです。",
- "prologue_punchline": "一つの言語。一つのコンパイラ。一つのバイナリ。ネイティブかウェブか — ソースは同じ。",
+ "prologue_description": "zo (/zu:/、「zoo」と同じ発音) は、実用的で軽量、クロスプラットフォームの汎用プログラミング言語です。型安全なデスクトップ・モバイル・ウェブアプリケーションを、単一のソースコードから出荷・実行・構築します。",
+ "prologue_punchline": "一つの言語。一つのコンパイラ。一つのバイナリ。一つのウィンドウ。すべてのプラットフォーム — ソースは同じ。",
"prologue_title": "zo プログラミング言語。",
"purpose_description": "クリエイティブな開発者がシンプルな Ui コードと高性能のどちらかを選ばなくていいようにすべきだ。API はバラバラ、ツールは複雑すぎ、開発ループは遅すぎる。zo は糊として作られた — クリエイティブな考えを、堅牢でクロスプラットフォームなソフトウェアに即座に変える、単一かつ直感的な言語。",
"purpose_quote_sentence": "なぜ遅いコンパイラを受け入れる?速くすればいいだけだ。",
diff --git a/apps/site/messages/zh.json b/apps/site/messages/zh.json
index 5134491d..3f9dff0c 100644
--- a/apps/site/messages/zh.json
+++ b/apps/site/messages/zh.json
@@ -7,19 +7,20 @@
"benchmarks_title": "## 基准测试",
"community_description": "为编译器极客、前端黑客与创作者打造的乐园。提交一个 issue,或来 Discord 打个招呼。",
"community_title": "## 社区",
- "features_fast_content": "采用现代编译器技术从零打造,实现即时执行,并配合有用的错误信息提供快速调试体验。",
+ "features_fast_content": "采用现代编译器技术从零打造,实现即时构建,并配合有用的错误信息提供快速调试体验。",
"features_fast_title": "快速",
- "features_integrated_content": "完整的工作站配备内置工具 — 包管理器 fret 与文本编辑器 codelord。",
+ "features_integrated_content": "完整的工作站配备内置工具 — 包管理器 fret 与文本编辑器 codelord。",
"features_integrated_title": "集成",
"features_quote": "通过不浪费精力来减少工作量。",
- "features_safe_content": "静态强类型。使用包裹在 nursery task scopes 中的 green 与 OS 线程;没有泄露线程,没有数据竞争。",
+ "features_safe_content": "静态强类型,没有 null,也没有裸指针。green 与 OS 线程运行在 nursery task scopes 中 — 没有泄露线程,没有共享可变状态。",
"features_safe_title": "安全",
"features_title": "## 功能",
- "features_unified_content": "用 ZSX 编写一次 Ui — 目标平台为原生 gpu 或网页 dom。",
+ "features_unified_content": "用 ZSX 编写一次 Ui — 目标平台为桌面 gpu、移动 uikit 或网页 dom。",
"features_unified_title": "统一",
"foundations_description": "由现代且可靠的基础驱动,提供高性能的图形与网页集成。",
"foundations_title": "## 基础",
"header_initiation": "入门",
+ "header_spec": "规范",
"header_news": "新闻",
"hero_tagline": "把你的想法瞬间变成类型安全的软件和 Ui。",
"initiation_authors": "invisageable 与 compilords",
@@ -30,7 +31,7 @@
"initiation_subtitle": "zo 的入门指南。",
"initiation_title": "入门",
"initiation_translators": "译者 ...",
- "manifesto_content": "zo 是一个位于另一台巨型编译器内的编译器之中的编译器,而那台编译器又位于一个庞大编译器之中。\n\n该项目的目标是提升开发者体验,让构建反映你创造力的软件变得无缝。我们专注于真正重要的细节,在软件世界中打开新的维度,让你将思想转化为程序不仅容易,而且令人愉悦。\n\nzo 是一个完整的生态系统,把钥匙交到你手中。你终于对自己的工作站拥有控制权。你再也不必盲目工作。我们的工具为你的程序提供从设计到交付所需的全部信息。\n\n我们反对软件中泛滥的同质化。zo 把网页与GPU统一起来 — 不是把网页塞进画布,而是让 Flexbox 布局与原生 GPU 算力和谐共处。我们会竭尽所能将创新的边界推到极致。\n\n加入这场反进化。",
+ "manifesto_content": "该项目的目标是提升开发者体验,让构建反映你创造力的软件变得无缝。我们专注于真正重要的细节,让你将思想转化为程序不仅容易,而且令人愉悦。",
"manifesto_title": "## 宣言",
"nav_benchmarks": "基准测试",
"news_description": "所有与 zo 相关的内容:发布、里程碑、设计笔记。",
@@ -50,8 +51,8 @@
"oss_merged_prs": "已合并 PR",
"oss_stars": "星标",
"oss_title": "## 开源",
- "prologue_description": "一门用于发布、运行和构建原生与网页应用的语言,针对速度进行优化。zo 是一个功能丰富的生态系统,专注于高性能、简洁与数据导向。",
- "prologue_punchline": "一门语言。一个编译器。一个二进制文件。原生或网页 — 同一份源码。",
+ "prologue_description": "zo (读作 /zu:/,就像 “zoo”) 是一门实用、轻量、跨平台的通用编程语言。用一份源代码来发布、运行和构建类型安全的桌面、移动和网页应用。",
+ "prologue_punchline": "一门语言。一个编译器。一个二进制文件。一个窗口。全平台 — 同一份源码。",
"prologue_title": "zo 编程语言。",
"purpose_description": "创作型开发者不应该在简洁的 Ui 代码和高性能之间做选择。API 各自为政,工具过于复杂,开发循环太慢。我们打造 zo 作为粘合剂 — 一门统一、直观的语言,让你瞬间把创意变成稳定、跨平台的软件。",
"purpose_quote_sentence": "为何忍受缓慢的编译器?让它们更快就是了。",
diff --git a/apps/site/package-lock.json b/apps/site/package-lock.json
index bcff03f2..a883f4cc 100644
--- a/apps/site/package-lock.json
+++ b/apps/site/package-lock.json
@@ -8,15 +8,15 @@
"name": "zo-off-site",
"version": "0.0.1",
"dependencies": {
- "@astrojs/sitemap": "^3.7.2",
- "@astrojs/vercel": "^10.0.6",
- "astro": "^6.2.1"
+ "@astrojs/sitemap": "^3.7.3",
+ "@astrojs/vercel": "^10.0.8",
+ "astro": "^6.4.6"
},
"devDependencies": {
"@inlang/paraglide-js": "^2.18.0"
},
"engines": {
- "node": ">=22.12.0"
+ "node": "24.x"
}
},
"node_modules/@astrojs/compiler": {
@@ -26,26 +26,32 @@
"license": "MIT"
},
"node_modules/@astrojs/internal-helpers": {
- "version": "0.9.0",
- "resolved": "https://registry.npmjs.org/@astrojs/internal-helpers/-/internal-helpers-0.9.0.tgz",
- "integrity": "sha512-GdYkzR26re8izmyYlBqf4z2s7zNngmWLFuxw0UKiPNqHraZGS6GKWIwSHgS22RDlu2ePFJ8bzmpBcUszut/SDg==",
+ "version": "0.10.0",
+ "resolved": "https://registry.npmjs.org/@astrojs/internal-helpers/-/internal-helpers-0.10.0.tgz",
+ "integrity": "sha512-Ry2R3VPeIN4uPCSA4xQc+e+vsJXkalKpEbDc07hV+a/o5Bs2N/s/uDcPJH/05L19DKh9tAy7e6JM3YZ6Cxfezw==",
"license": "MIT",
"dependencies": {
- "picomatch": "^4.0.4"
+ "@types/hast": "^3.0.4",
+ "@types/mdast": "^4.0.4",
+ "js-yaml": "^4.1.1",
+ "picomatch": "^4.0.4",
+ "retext-smartypants": "^6.2.0",
+ "shiki": "^4.0.2",
+ "smol-toml": "^1.6.0",
+ "unified": "^11.0.5"
}
},
"node_modules/@astrojs/markdown-remark": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/@astrojs/markdown-remark/-/markdown-remark-7.1.1.tgz",
- "integrity": "sha512-C6e9BnLGlbdv6bV8MYGeHpHxsUHrCrB4OuRLqi5LI7oiBVcBcqfUN06zpwFQdHgV48QCCrMmLpyqBr7VqC+swA==",
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/@astrojs/markdown-remark/-/markdown-remark-7.2.0.tgz",
+ "integrity": "sha512-+YxmVQu1Bd+MFfSzjq1rOJvD9+nIOJzz5YIIhdIH01RrxRkKbyKoEgyIqP3yv51MhzMDgd79QaPv+kCVPT8vHw==",
"license": "MIT",
"dependencies": {
- "@astrojs/internal-helpers": "0.9.0",
- "@astrojs/prism": "4.0.1",
+ "@astrojs/internal-helpers": "0.10.0",
+ "@astrojs/prism": "4.0.2",
"github-slugger": "^2.0.0",
"hast-util-from-html": "^2.0.3",
"hast-util-to-text": "^4.0.2",
- "js-yaml": "^4.1.1",
"mdast-util-definitions": "^6.0.0",
"rehype-raw": "^7.0.0",
"rehype-stringify": "^10.0.1",
@@ -53,9 +59,6 @@
"remark-parse": "^11.0.0",
"remark-rehype": "^11.1.2",
"remark-smartypants": "^3.0.2",
- "retext-smartypants": "^6.2.0",
- "shiki": "^4.0.0",
- "smol-toml": "^1.6.0",
"unified": "^11.0.5",
"unist-util-remove-position": "^5.0.0",
"unist-util-visit": "^5.1.0",
@@ -64,9 +67,9 @@
}
},
"node_modules/@astrojs/prism": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@astrojs/prism/-/prism-4.0.1.tgz",
- "integrity": "sha512-nksZQVjlferuWzhPsBpQ1JE5XuKAf1id1/9Hj4a9KG4+ofrlzxUUwX4YGQF/SuDiuiGKEnzopGOt38F3AnVWsQ==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@astrojs/prism/-/prism-4.0.2.tgz",
+ "integrity": "sha512-KTivpmnz6lDsC6o9H4+DNm2SrE/GHzw8cNAvEJwAvUT+eoaEnn/4NtbDNfRRaxaJHdp15gf+tfHAWiXR4wB3BA==",
"license": "MIT",
"dependencies": {
"prismjs": "^1.30.0"
@@ -76,9 +79,9 @@
}
},
"node_modules/@astrojs/sitemap": {
- "version": "3.7.2",
- "resolved": "https://registry.npmjs.org/@astrojs/sitemap/-/sitemap-3.7.2.tgz",
- "integrity": "sha512-PqkzkcZTb5ICiyIR8VoKbIAP/laNRXi5tw616N1Ckk+40oNB8Can1AzVV56lrbC5GKSZFCyJYUVYqVivMisvpA==",
+ "version": "3.7.3",
+ "resolved": "https://registry.npmjs.org/@astrojs/sitemap/-/sitemap-3.7.3.tgz",
+ "integrity": "sha512-f8euLVsyeAmAkSm/1M2Kb8sL8byQmfgbvBNaHFItCheTj/IpiJYSEWVcqDHZ/yEHxiS7+w87mQkzwZaPHmk5GA==",
"license": "MIT",
"dependencies": {
"sitemap": "^9.0.0",
@@ -87,13 +90,12 @@
}
},
"node_modules/@astrojs/telemetry": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-3.3.1.tgz",
- "integrity": "sha512-7fcIxXS9J4ls5tr8b3ww9rbAIz2+HrhNJYZdkAhhB4za/I5IZ/60g+Bs8q7zwG0tOIZfNB4JWhVJ1Qkl/OrNCw==",
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-3.3.2.tgz",
+ "integrity": "sha512-j8DNruA8ors99Al39RYZPJK4DC1bKkoNm93mAMuBhY9TCNC4R8n1q7ovFnJ5qhGh5Lsh7pa1gpQVpYpsJPeTHQ==",
"license": "MIT",
"dependencies": {
"ci-info": "^4.4.0",
- "dlv": "^1.1.3",
"dset": "^3.1.4",
"is-docker": "^4.0.0",
"is-wsl": "^3.1.1",
@@ -104,12 +106,12 @@
}
},
"node_modules/@astrojs/vercel": {
- "version": "10.0.6",
- "resolved": "https://registry.npmjs.org/@astrojs/vercel/-/vercel-10.0.6.tgz",
- "integrity": "sha512-Ubd1M77QWqXXluFNL8/ynmfyZCfIUVuL6QRpPXGYOIQ8Dv3QBXM34e0CMig3OgmihSIWNv9sqQHzEHDyDJV9QQ==",
+ "version": "10.0.8",
+ "resolved": "https://registry.npmjs.org/@astrojs/vercel/-/vercel-10.0.8.tgz",
+ "integrity": "sha512-usxmHwMEWI+yaYioSB9eFZbmuFKPnMPmQlX2e9PZ3+v79Xo4IFiKVqblspV+CuOE3u/CtgcHdnC9khKjZlbMyA==",
"license": "MIT",
"dependencies": {
- "@astrojs/internal-helpers": "0.9.0",
+ "@astrojs/internal-helpers": "0.10.0",
"@vercel/analytics": "^1.6.1",
"@vercel/functions": "^3.4.3",
"@vercel/nft": "^1.3.2",
@@ -1653,13 +1655,13 @@
]
},
"node_modules/@shikijs/core": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-4.0.2.tgz",
- "integrity": "sha512-hxT0YF4ExEqB8G/qFdtJvpmHXBYJ2lWW7qTHDarVkIudPFE6iCIrqdgWxGn5s+ppkGXI0aEGlibI0PAyzP3zlw==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-4.2.0.tgz",
+ "integrity": "sha512-Hc87Ab1Ld/vEbZRCbwx344I5v+4RU8CVToUTRkqXL1+TjbuOp9U5Xa0M23V4GEWHxVn+yO5otb+HkQVm3ptWQQ==",
"license": "MIT",
"dependencies": {
- "@shikijs/primitive": "4.0.2",
- "@shikijs/types": "4.0.2",
+ "@shikijs/primitive": "4.2.0",
+ "@shikijs/types": "4.2.0",
"@shikijs/vscode-textmate": "^10.0.2",
"@types/hast": "^3.0.4",
"hast-util-to-html": "^9.0.5"
@@ -1669,26 +1671,26 @@
}
},
"node_modules/@shikijs/engine-javascript": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-4.0.2.tgz",
- "integrity": "sha512-7PW0Nm49DcoUIQEXlJhNNBHyoGMjalRETTCcjMqEaMoJRLljy1Bi/EGV3/qLBgLKQejdspiiYuHGQW6dX94Nag==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-4.2.0.tgz",
+ "integrity": "sha512-fjETeq1k5ffyXqRgS6+3hpvqseLalp1kjNfRbXpUgWR8FpZ1CmQfiNHovc5lncYjt/Vg5JK/WJEmLahjwMa0og==",
"license": "MIT",
"dependencies": {
- "@shikijs/types": "4.0.2",
+ "@shikijs/types": "4.2.0",
"@shikijs/vscode-textmate": "^10.0.2",
- "oniguruma-to-es": "^4.3.4"
+ "oniguruma-to-es": "^4.3.6"
},
"engines": {
"node": ">=20"
}
},
"node_modules/@shikijs/engine-oniguruma": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-4.0.2.tgz",
- "integrity": "sha512-UpCB9Y2sUKlS9z8juFSKz7ZtysmeXCgnRF0dlhXBkmQnek7lAToPte8DkxmEYGNTMii72zU/lyXiCB6StuZeJg==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-4.2.0.tgz",
+ "integrity": "sha512-hTorK1dffPkpbMUk6Z+828PgRo7d07HbnizoP0hNPFjhxMHctj0Px/qoHeGMYafc6ju+u9iMldN4JbVzNQM++g==",
"license": "MIT",
"dependencies": {
- "@shikijs/types": "4.0.2",
+ "@shikijs/types": "4.2.0",
"@shikijs/vscode-textmate": "^10.0.2"
},
"engines": {
@@ -1696,24 +1698,24 @@
}
},
"node_modules/@shikijs/langs": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-4.0.2.tgz",
- "integrity": "sha512-KaXby5dvoeuZzN0rYQiPMjFoUrz4hgwIE+D6Du9owcHcl6/g16/yT5BQxSW5cGt2MZBz6Hl0YuRqf12omRfUUg==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-4.2.0.tgz",
+ "integrity": "sha512-bwrVRlJ0wUhZxAbVdvBbv2TTC9yLsh4C/IO5Ofz0T8MQntgDvyVnkbjw9vi50r1kx7RCIJdnJnjZAwmAsXFLZQ==",
"license": "MIT",
"dependencies": {
- "@shikijs/types": "4.0.2"
+ "@shikijs/types": "4.2.0"
},
"engines": {
"node": ">=20"
}
},
"node_modules/@shikijs/primitive": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@shikijs/primitive/-/primitive-4.0.2.tgz",
- "integrity": "sha512-M6UMPrSa3fN5ayeJwFVl9qWofl273wtK1VG8ySDZ1mQBfhCpdd8nEx7nPZ/tk7k+TYcpqBZzj/AnwxT9lO+HJw==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/@shikijs/primitive/-/primitive-4.2.0.tgz",
+ "integrity": "sha512-NOq+DtUkVBJtZMVXL5A0vI0Xk8nvDYaXetFHSJFlOqjDZIVhIPRYFdGkSoElDqNuegikcc3A76SNUa8dTqtAYA==",
"license": "MIT",
"dependencies": {
- "@shikijs/types": "4.0.2",
+ "@shikijs/types": "4.2.0",
"@shikijs/vscode-textmate": "^10.0.2",
"@types/hast": "^3.0.4"
},
@@ -1722,21 +1724,21 @@
}
},
"node_modules/@shikijs/themes": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-4.0.2.tgz",
- "integrity": "sha512-mjCafwt8lJJaVSsQvNVrJumbnnj1RI8jbUKrPKgE6E3OvQKxnuRoBaYC51H4IGHePsGN/QtALglWBU7DoKDFnA==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-4.2.0.tgz",
+ "integrity": "sha512-RX8IHYeLv8Cu2W6ruc3RxUqWn0IYCqSrMBzi/uRGAmfyDNOnNO5BF/Px7o97n4XTpmFTo5GbRaazuOWj+2ak2w==",
"license": "MIT",
"dependencies": {
- "@shikijs/types": "4.0.2"
+ "@shikijs/types": "4.2.0"
},
"engines": {
"node": ">=20"
}
},
"node_modules/@shikijs/types": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-4.0.2.tgz",
- "integrity": "sha512-qzbeRooUTPnLE+sHD/Z8DStmaDgnbbc/pMrU203950aRqjX/6AFHeDYT+j00y2lPdz0ywJKx7o/7qnqTivtlXg==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-4.2.0.tgz",
+ "integrity": "sha512-VT/MKtlpOhEPZloSH3Pb9WCZEBDoQVMa9jedp5UAwmJOar1DVc9DRODAxmYPW9M93IK4ryuqRejFfmlvlVDemw==",
"license": "MIT",
"dependencies": {
"@shikijs/vscode-textmate": "^10.0.2",
@@ -2035,15 +2037,15 @@
"license": "MIT"
},
"node_modules/astro": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/astro/-/astro-6.2.1.tgz",
- "integrity": "sha512-3g1sYNly+QAkuO5ErNEQBYvsxorNDSCUNIeStBs+kcXGchvKQl1Q9EuDNOvSg010XLlHJFLVFZs9LV18Jjp4Hg==",
+ "version": "6.4.6",
+ "resolved": "https://registry.npmjs.org/astro/-/astro-6.4.6.tgz",
+ "integrity": "sha512-48OBTBKR9ctbf+DQxpOuxGl8ebfn59zTuNQMBzptmG/Mi/H8IdfMSbJgGuX1I/4U6g9yazG1p4BHlf4+2hWU4Q==",
"license": "MIT",
"dependencies": {
"@astrojs/compiler": "^4.0.0",
- "@astrojs/internal-helpers": "0.9.0",
- "@astrojs/markdown-remark": "7.1.1",
- "@astrojs/telemetry": "3.3.1",
+ "@astrojs/internal-helpers": "0.10.0",
+ "@astrojs/markdown-remark": "7.2.0",
+ "@astrojs/telemetry": "3.3.2",
"@capsizecss/unpack": "^4.0.0",
"@clack/prompts": "^1.1.0",
"@oslojs/encoding": "^1.1.0",
@@ -2054,17 +2056,19 @@
"clsx": "^2.1.1",
"common-ancestor-path": "^2.0.0",
"cookie": "^1.1.1",
- "devalue": "^5.6.3",
+ "devalue": "^5.8.1",
"diff": "^8.0.3",
"dset": "^3.1.4",
"es-module-lexer": "^2.0.0",
"esbuild": "^0.27.3",
"flattie": "^1.1.1",
"fontace": "~0.4.1",
+ "get-tsconfig": "5.0.0-beta.4",
"github-slugger": "^2.0.0",
"html-escaper": "3.0.3",
"http-cache-semantics": "^4.2.0",
"js-yaml": "^4.1.1",
+ "jsonc-parser": "^3.3.1",
"magic-string": "^0.30.21",
"magicast": "^0.5.2",
"mrmime": "^2.0.1",
@@ -2083,7 +2087,6 @@
"tinyclip": "^0.1.12",
"tinyexec": "^1.0.4",
"tinyglobby": "^0.2.15",
- "tsconfck": "^3.1.6",
"ultrahtml": "^1.6.0",
"unifont": "~0.7.4",
"unist-util-visit": "^5.1.0",
@@ -2489,9 +2492,9 @@
}
},
"node_modules/devalue": {
- "version": "5.8.0",
- "resolved": "https://registry.npmjs.org/devalue/-/devalue-5.8.0.tgz",
- "integrity": "sha512-2zA9pFEsnp7vWBZbXF5JAgAq0fsUIt/1XPbRiAmRV3lp/2C3upzH+sADiyy66aFCihoLEsrQHxNM5w1gIDfsBg==",
+ "version": "5.8.1",
+ "resolved": "https://registry.npmjs.org/devalue/-/devalue-5.8.1.tgz",
+ "integrity": "sha512-4CXDYRBGqN+57wVJkuXBYmpAVUSg3L6JAQa/DFqm238G73E1wuyc/JhGQJzN7vUf/CMphYau2zXbfWzDR5aTEw==",
"license": "MIT"
},
"node_modules/devlop": {
@@ -2516,12 +2519,6 @@
"node": ">=0.3.1"
}
},
- "node_modules/dlv": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
- "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
- "license": "MIT"
- },
"node_modules/dom-serializer": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
@@ -2806,6 +2803,21 @@
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
}
},
+ "node_modules/get-tsconfig": {
+ "version": "5.0.0-beta.4",
+ "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-5.0.0-beta.4.tgz",
+ "integrity": "sha512-7nF7C9fIPFEMHgEMEfgIlO9wDdZ8CyHw27rWciFZfHvHDReIiPhsYuzPRXsfvBCqFy1l8RRyyWV7QLM+ZhUJsQ==",
+ "license": "MIT",
+ "dependencies": {
+ "resolve-pkg-maps": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=20.20.0"
+ },
+ "funding": {
+ "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1"
+ }
+ },
"node_modules/github-slugger": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz",
@@ -3166,9 +3178,19 @@
"license": "MIT"
},
"node_modules/js-yaml": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
- "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.2.0.tgz",
+ "integrity": "sha512-ePWsvanv0DWuDRsW8dnt+R4jQ31SCRCQ7hhNcPXZPsoBZiemuZNYGf7adZdqX2D86j6rvKp3RpCxVTSb8WQlOw==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/puzrin"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/nodeca"
+ }
+ ],
"license": "MIT",
"dependencies": {
"argparse": "^2.0.1"
@@ -3197,6 +3219,12 @@
"node": ">=6"
}
},
+ "node_modules/jsonc-parser": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz",
+ "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==",
+ "license": "MIT"
+ },
"node_modules/kysely": {
"version": "0.28.17",
"resolved": "https://registry.npmjs.org/kysely/-/kysely-0.28.17.tgz",
@@ -4647,6 +4675,15 @@
"node": ">=8"
}
},
+ "node_modules/resolve-pkg-maps": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
+ "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==",
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1"
+ }
+ },
"node_modules/retext": {
"version": "9.0.0",
"resolved": "https://registry.npmjs.org/retext/-/retext-9.0.0.tgz",
@@ -4819,17 +4856,17 @@
}
},
"node_modules/shiki": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/shiki/-/shiki-4.0.2.tgz",
- "integrity": "sha512-eAVKTMedR5ckPo4xne/PjYQYrU3qx78gtJZ+sHlXEg5IHhhoQhMfZVzetTYuaJS0L2Ef3AcCRzCHV8T0WI6nIQ==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/shiki/-/shiki-4.2.0.tgz",
+ "integrity": "sha512-hjNax6o/ylDy9lefQEaSDtzaT3iVNtZ3WmpQnbuQNoG4xvnSKf2kSKbihZVO4JRG1TTMejs7CmNRYlWgAL66pQ==",
"license": "MIT",
"dependencies": {
- "@shikijs/core": "4.0.2",
- "@shikijs/engine-javascript": "4.0.2",
- "@shikijs/engine-oniguruma": "4.0.2",
- "@shikijs/langs": "4.0.2",
- "@shikijs/themes": "4.0.2",
- "@shikijs/types": "4.0.2",
+ "@shikijs/core": "4.2.0",
+ "@shikijs/engine-javascript": "4.2.0",
+ "@shikijs/engine-oniguruma": "4.2.0",
+ "@shikijs/langs": "4.2.0",
+ "@shikijs/themes": "4.2.0",
+ "@shikijs/types": "4.2.0",
"@shikijs/vscode-textmate": "^10.0.2",
"@types/hast": "^3.0.4"
},
@@ -5032,26 +5069,6 @@
"url": "https://github.com/sponsors/wooorm"
}
},
- "node_modules/tsconfck": {
- "version": "3.1.6",
- "resolved": "https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.6.tgz",
- "integrity": "sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w==",
- "license": "MIT",
- "bin": {
- "tsconfck": "bin/tsconfck.js"
- },
- "engines": {
- "node": "^18 || >=20"
- },
- "peerDependencies": {
- "typescript": "^5.0.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
"node_modules/tslib": {
"version": "2.8.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
diff --git a/apps/site/package.json b/apps/site/package.json
index 731e85fb..b781ff7c 100644
--- a/apps/site/package.json
+++ b/apps/site/package.json
@@ -15,9 +15,9 @@
"zo:docs": "node ../site-tasks/build-llms-full.mjs"
},
"dependencies": {
- "@astrojs/sitemap": "^3.7.2",
- "@astrojs/vercel": "^10.0.6",
- "astro": "^6.2.1"
+ "@astrojs/sitemap": "^3.7.3",
+ "@astrojs/vercel": "^10.0.8",
+ "astro": "^6.4.6"
},
"devDependencies": {
"@inlang/paraglide-js": "^2.18.0"
diff --git a/apps/site/src/components/structure/benchmarks.astro b/apps/site/src/components/structure/benchmarks.astro
index 8eadc7c0..80174167 100644
--- a/apps/site/src/components/structure/benchmarks.astro
+++ b/apps/site/src/components/structure/benchmarks.astro
@@ -15,17 +15,14 @@ const benchmarks = [
{
compiler: "zo",
hot: 60,
- throughput: "~167K LoC/s",
},
{
compiler: "clang",
hot: 148,
- throughput: "~67K LoC/s",
},
{
compiler: "rustc",
hot: 321,
- throughput: "~31K LoC/s",
},
];
@@ -33,7 +30,6 @@ const series: Series[] = benchmarks.map((benchmark) => ({
label: benchmark.compiler,
value: benchmark.hot,
display: `${benchmark.hot}ms`,
- inBar: benchmark.throughput,
}));
---
diff --git a/apps/site/src/components/structure/header.astro b/apps/site/src/components/structure/header.astro
index e9cbcda1..031e94a3 100644
--- a/apps/site/src/components/structure/header.astro
+++ b/apps/site/src/components/structure/header.astro
@@ -16,6 +16,7 @@ const { class: className, id } = Astro.props;