Phase 12.7文法改革: ドキュメント文法統一 + VMリファクタリング準備

🌟 Phase 12.7文法改革に基づくドキュメント更新
- init {} → field: TypeBox 個別フィールド宣言形式
- init() → birth() コンストラクタ統一
- pack() → 廃止(birth()に統一)
- public {}/private {} → 個別フィールド修飾子
- override → 廃止(メソッド定義はシンプルに)

📚 更新したドキュメント
- CLAUDE.md: メイン開発ガイド
- docs/quick-reference/syntax-cheatsheet.md: 構文早見表
- docs/reference/language/LANGUAGE_REFERENCE_2025.md: 言語リファレンス
- docs/development/roadmap/phases/phase-15/README.md: Phase 15計画

🔧 VMリファクタリング準備
- vm_methods.rs: VMメソッド呼び出しの分離
- plugin_loader.rs → plugin_loader/: ディレクトリ構造化
- mir/builder/exprs.rs: 式ビルダー分離

📝 新規ドキュメント追加
- 論文戦略・ロードマップ
- Phase 15セルフホスティング準備資料
- Codex Androidセットアップガイド

ビルドは正常に通ることを確認済み!🎉

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Moe Charm
2025-09-04 06:27:39 +09:00
parent 6488b0542e
commit 4e824fa00e
27 changed files with 2804 additions and 1656 deletions

View File

@ -0,0 +1,120 @@
# JIT→EXE実装スケジュール
## 📅 全体スケジュール6週間
### Week 0: 準備期間(リファクタリング待ち)
- ChatGPT5のリファクタリング完了待機
- Cranelift/lld調査・準備
- テスト環境構築
### Week 1-2: 基礎実装
- [ ] C ABIファサード実装`ny_mir_to_obj`
- [ ] Cranelift統合基本的なMIR→CLIF変換
- [ ] 簡単なプログラムでの動作確認
### Week 3: リンカー統合
- [ ] lld内蔵実装
- [ ] プラットフォーム別リンカーラッパー
- [ ] nyashrtランタイム作成
### Week 4: 最適化・改善
- [ ] プロファイルベースJIT判定
- [ ] オブジェクトファイルキャッシュ
- [ ] エラーハンドリング改善
### Week 5: 評価・ベンチマーク
- [ ] 性能測定スイート作成
- [ ] 他言語との比較
- [ ] ボトルネック分析
### Week 6: 論文執筆
- [ ] データ整理・グラフ作成
- [ ] 各セクション執筆
- [ ] レビュー・推敲
## 🔧 技術的マイルストーン
### Phase 1: Minimum Viable Compiler
```bash
# 最小動作確認
echo 'box Main { main() { print("Hello from EXE!") } }' > test.ny
nyash build test.ny --backend=cranelift
./test.exe # or ./test on Linux
```
### Phase 2: Real-World Programs
- サイコロRPGのEXE化
- 統計計算ツールのスタンドアロン化
- ベンチマークプログラムの移植
### Phase 3: Self-Hosting Preparation
- Nyashコンパイラ自身のAOTコンパイル
- ブートストラップテスト
- 配布パッケージ作成
## 📊 成功指標
### 技術的指標
- [ ] Hello WorldがEXE化できる
- [ ] 全スモークテストがAOTで通る
- [ ] JIT性能の90%以上を達成
- [ ] バイナリサイズ < 5MB
### 論文的指標
- [ ] 13命令での完全性証明
- [ ] 性能評価データ収集完了
- [ ] 関連研究との差別化明確
- [ ] 実装の再現可能性確保
## 🎯 リスクと対策
### リスク1: Cranelift API変更
- **対策**: バージョン固定抽象化層
### リスク2: プラットフォーム依存
- **対策**: CI/CDでの継続的テスト
### リスク3: 性能目標未達
- **対策**: プロファイリング段階的最適化
## 💡 論文投稿戦略
### 投稿先優先順位
1. **PLDI 2026** (締切: 2025年11月)
- プログラミング言語の最高峰
- JIT/AOT統合は完璧にマッチ
2. **CC 2026** (締切: 2025年10月)
- コンパイラ専門会議
- 技術的深さを評価
3. **ASPLOS 2026** (締切: 2025年8月)
- システム寄りだが可能性あり
- 性能面を強調
### 差別化ポイント
- **極小IR13命令**: 前代未聞のシンプルさ
- **完全自立**: 外部ツールチェーン不要
- **実証済み**: 自己ホスティング成功
- **実用性**: 実際のアプリケーションで検証
## 🚀 実装開始チェックリスト
### 環境準備
- [ ] Cranelift最新版の調査
- [ ] lldのビルド方法確認
- [ ] Windows/Linux両環境準備
### コード準備
- [ ] MIRCranelift変換の設計
- [ ] C ABIヘッダー作成
- [ ] テストケース整理
### ドキュメント準備
- [ ] API仕様書
- [ ] ビルド手順書
- [ ] トラブルシューティング
---
**次のステップ**: ChatGPT5のリファクタリング完了を待ちながらCranelift APIの学習とプロトタイプ作成を開始