Read in English # 仕様書(入口) ### ユーザー向け | 内容 | リンク | 説明 | |---|---|---| | 利用仕様 | [spec-user.md](./spec-user.md) | 使い方、入力制約、テスト実行方法 | | Python 互換性 | [spec-python-compat.md](./spec-python-compat.md) | Python との違い、使えない構文 | | pylib モジュール | [spec-pylib-modules.md](./spec-pylib-modules.md) | 使えるモジュールと関数の一覧 | ### 言語仕様 | 内容 | リンク | 説明 | |---|---|---| | 型システム・type_id | [spec-type_id.md](./spec-type_id.md) | 単一継承、isinstance、POD exact match | | tagged union | [spec-tagged-union.md](./spec-tagged-union.md) | `type X = A \| B` の宣言、コード生成 | | ADT | [spec-adt.md](./spec-adt.md) | union type の言語別変換方針、enum/variant/sealed class | | Trait | [spec-trait.md](./spec-trait.md) | `@trait` / `@implements`、pure interface | | 例外処理 | [spec-exception.md](./spec-exception.md) | raise/try/except、native_throw と union_return | | Boxing/Unboxing | [spec-boxing.md](./spec-boxing.md) | Any/object 境界の型変換 | | Object\ | [spec-object.md](./spec-object.md) | 参照型ラッパーの設計仕様 | | import | [spec-import.md](./spec-import.md) | import の解決規則 | | built-in 関数 | [spec-builtin-functions.md](./spec-builtin-functions.md) | built-in 関数の宣言仕様 | | @template | [spec-template.md](./spec-template.md) | テンプレート(ジェネリクス)仕様 | | Iterable/Iterator | [spec-iterable.md](./spec-iterable.md) | for 文の反復契約、動的プロトコル | | @runtime / @extern | [spec-runtime-decorator.md](./spec-runtime-decorator.md) | `@runtime` と `@extern` の仕様、自動導出ルール、引数の渡し方 | | Opaque 型 | [spec-opaque-type.md](./spec-opaque-type.md) | `@extern class` の型契約(rc なし、boxing なし) | | GC | [spec-gc.md](./spec-gc.md) | RC ベースの GC 方針 | ### EAST(中間表現) | 内容 | リンク | 説明 | |---|---|---| | EAST 統合仕様 | [spec-east.md](./spec-east.md) | 現行正本。型推論、ノード仕様、ナローイング | | EAST1 | [spec-east1.md](./spec-east1.md) | parse 出力契約(型未解決) | | EAST2 | [spec-east2.md](./spec-east2.md) | resolve 出力契約(型確定) | | EAST3 Optimizer | [spec-east3-optimizer.md](./spec-east3-optimizer.md) | 最適化パスの責務と契約 | | Linker | [spec-linker.md](./spec-linker.md) | multi-module 連結、type_id 確定 | ### Backend / Emitter | 内容 | リンク | 説明 | |---|---|---| | Emitter ガイドライン | [spec-emitter-guide.md](./spec-emitter-guide.md) | 全 emitter 共通の契約、禁止事項 | | 言語プロファイル | [spec-language-profile.md](./spec-language-profile.md) | Lowering プロファイル、CommonRenderer | | runtime mapping | [spec-runtime-mapping.md](./spec-runtime-mapping.md) | mapping.json のフォーマット | | ランタイム | [spec-runtime.md](./spec-runtime.md) | ランタイム配置、include 規約 | ### 開発者向け | 内容 | リンク | 説明 | |---|---|---| | 開発環境セットアップ | [spec-setup.md](./spec-setup.md) | clone 直後の golden / runtime east 生成手順 | | 実装仕様 | [spec-dev.md](./spec-dev.md) | 実装方針、モジュール構成 | | フォルダ責務 | [spec-folder.md](./spec-folder.md) | どのフォルダに何を置くか | | stdlib 正本化 | [spec-stdlib-signature-source-of-truth.md](./spec-stdlib-signature-source-of-truth.md) | pytra/std を型仕様の正本にする契約 | | tools 一覧 | [spec-tools.md](./spec-tools.md) | tools/ スクリプトの一覧と用途 | | AI agent 運用 | [spec-agent.md](./spec-agent.md) | Codex / Claude Code の作業ルール、TODO 運用 | | 開発思想 | [spec-philosophy.md](./spec-philosophy.md) | EAST 中心設計の背景 | | 旧仕様 | [archive/index.md](./archive/index.md) | 退役した仕様のアーカイブ | ## AI agent 起動時の確認先 - AI agent(Codex / Claude Code)は起動時に `docs/ja/spec/index.md` を入口として読み、続けて [AI agent 運用仕様](./spec-agent.md) と [TODO](../todo/index.md) を確認します。