Files
hakorune/docs/development/roadmap/phases/phase-16/README.md
Moe Charm de99b40bee Phase 12 TypeBox統合ABI設計完了: C ABI + Nyash ABI革命的統合
主な成果:
- TypeBox(型情報をBoxとして扱う)による統合ABI設計
- C ABI + Nyash ABIの完全統合仕様書作成
- 3大AI専門家(Gemini/Codex/ChatGPT5)による検証済み
- ChatGPT5の10個の安全性改善提案を反映
- README.mdのドキュメント更新(全起点から到達可能)

MapBox拡張:
- string型キーサポート(従来のi64に加えて)
- remove/clear/getOr/keysStr/valuesStr/toJson実装
- keys()/values()のランタイムシムサポート(TypeBox待ち)

その他の改善:
- Phase 11.9(文法統一化)ドキュメント追加
- Phase 16(FoldLang)ドキュメント追加
- 非同期タイムアウトテスト追加
- 各種ビルド警告(未使用import等)は次のリファクタリングで対応予定

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-02 09:26:09 +09:00

2.1 KiB
Raw Blame History

Phase 16: 折りたたみ言語FoldLang- Box世界の合成最適化

📋 概要

セルフホスティング達成後の次なる進化フェーズ。 Nyashの「Everything is Box」哲学を維持しながら、実用的な実行速度を実現する革新的最適化層。

🎯 フェーズの目的

  1. Box境界を越えた最適化: 複数のBox操作を1つに融合
  2. デバッグ容易性の維持: unfoldでいつでも元に戻せる
  3. 実用速度の実現: 30-40%の性能改善
  4. MIR15の単純性維持: 命令追加なしで最適化

📊 主要成果物

  • 純度属性システム(#[ny.pure]等)
  • FoldPass実装BoxCall融合エンジン
  • Fold Inspector可視化ツール
  • unfoldデバッグモード
  • 性能ベンチマークスイート

🔧 技術的アプローチ

中核アイデア

従来: Box境界 = 最適化の壁
FoldLang: Box境界 = 最適化の単位

実装例

# ユーザーコード(変わらない)
result = data.map(f).filter(p).map(g)

# 内部で自動融合
# 3回のループ → 1回のループ
# 3回のアロケーション → 1回のアロケーション

🔗 関連ドキュメント

📅 実施時期

  • 開始条件: Phase 15セルフホスティング完了後
  • 推定開始: 2026年後半
  • 推定期間: 3-4ヶ月

💡 期待される成果

  1. 性能改善: Array/String操作で30-40%高速化
  2. メモリ効率: 中間オブジェクト削減で50%改善
  3. GC負荷軽減: オブジェクト生成数1/3
  4. 開発体験: デバッグ時は自動unfold

🌟 なぜPhase 15の後か

  1. 複雑性の分離: まず動くものを、次に速いものを
  2. ドッグフーディング: Nyashで最適化を書く
  3. 明確な成功基準: 各フェーズで達成感

「折りたたみ言語 = Box世界の合成最適化層」 ChatGPT5による革新的提案2025-09-01