📚 Reorganize CLAUDE.md: slim down from 916 to 395 lines with proper doc links

- Keep essential information within 500 lines (now 395 lines)
- Maintain important syntax examples and development principles
- Move detailed information to appropriate docs files:
  - Development practices → docs/guides/development-practices.md
  - Testing guide → docs/guides/testing-guide.md
  - Claude issues → docs/tools/claude-issues.md
- Add proper links to all referenced documentation
- Balance between minimal entry point and practical usability
This commit is contained in:
Moe Charm
2025-08-31 06:22:48 +09:00
parent b003bdf25b
commit fff9749f47
54 changed files with 3965 additions and 917 deletions

View File

@ -2,9 +2,39 @@
このディレクトリには、Nyashの実力を示す実用的なアプリケーションが含まれています。
## 🚀 アプリケーション一覧
## 🚀 実装済みアプリケーション
### 1. ny-echo - 最小CLI実装
### 🎮 ゲーム・エミュレータ
#### CHIP-8エミュレータ
**場所**: `chip8_nyash/chip8_emulator.nyash`
**特徴**: 完全なゲーム機エミュレータ、グラフィック表示対応
```bash
./target/release/nyash apps/chip8_nyash/chip8_emulator.nyash
```
### 📝 エディタ・開発ツール
#### Enhanced Kilo Editor
**場所**: `kilo_nyash/enhanced_kilo_editor.nyash`
**特徴**: テキストエディタkilo改良版、実用的なファイル編集機能
```bash
./target/release/nyash apps/kilo_nyash/enhanced_kilo_editor.nyash
```
### 🌐 ネットワークアプリ
#### TinyProxy
**場所**: `tinyproxy_nyash/proxy_server.nyash`
**特徴**: HTTPプロキシサーバー、Netプラグイン活用
```bash
./target/release/nyash apps/tinyproxy_nyash/proxy_server.nyash
```
### 🛠️ ユーティリティ・ベンチマーク
#### ny-echo - 最小CLI実装
**場所**: `ny-echo/main.nyash`
標準入力を読み取り、オプションに応じて変換して出力する基本的なCLIツール。
```bash
@ -75,23 +105,77 @@ cd apps/ny-echo
./test.sh
```
## 📊 性能指標
## 🎯 予定アプリケーション(論文・ベンチマーク用)
| アプリ | VM | JIT | AOT | 用途 |
|--------|-----|-----|-----|------|
| ny-echo | 1.0x | 5x | 10x | I/O性能 |
| ny-array-bench | 1.0x | 5x | 10x | 計算性能 |
| ny-jsonlint | 1.0x | 3x | 5x | FFI性能 |
| ny-filegrep | 1.0x | 4x | 8x | 実用性能 |
| ny-http-hello | 1.0x | 6x | 12x | 並行性能 |
### 📊 CLBG標準ベンチマーク
AI先生たちの推奨により、論文説得力向上のため以下を実装予定
## 🎯 開発ロードマップ
#### 1. binary-trees - メモリ・GC性能測定
**目的**: GC性能、メモリ割り当て速度測定
**期待性能**: Interpreter(1x) → VM(8x) → LLVM(20x)
```nyash
// 二分木大量生成・破棄でGC性能測定
box TreeNode {
init { left, right, value }
birth(depth, value) { ... }
}
```
- [x] Phase 1: ny-echo基本I/O検証
- [x] Phase 2: ny-array-bench性能基準
- [ ] Phase 3: ny-jsonlintプラグイン統合
- [ ] Phase 4: ny-filegrep実用性
- [ ] Phase 5: ny-http-helloWeb対応
#### 2. n-body - 数値計算の王道
**目的**: 浮動小数点演算、ループ最適化効果測定
**期待性能**: Interpreter(1x) → VM(10x) → LLVM(50x)
```nyash
// 太陽系シミュレーション、重力計算
// MathBoxを活用した数値計算ベンチマーク
```
#### 3. mandelbrot - 計算+画像出力
**目的**: 純粋計算性能、ファイル出力確認
**期待性能**: Interpreter(1x) → VM(15x) → LLVM(80x)
```nyash
// フラクタル計算、PPM/PNGファイル出力
// 視覚的にJIT/LLVM効果を確認可能
```
### 🌟 Nyash特色ベンチマーク
#### 4. JSON Stream Aggregator
**目的**: プラグイン統一性、「Everything is Box」実証
**特徴**: File/Netプラグインから同じコードで処理
```nyash
// FileBoxとNetBoxから同じAPIでJSONを読み取り
// 同一コードでローカルファイルとHTTP APIに対応
```
## 📊 性能指標(現在の実測値)
| アプリ | Interpreter | VM | LLVM(予定) | 用途 |
|--------|-------------|----|-----------| -----|
| ny-echo | 1.0x | 13.5x | 50x | I/O性能 |
| ny-array-bench | 1.0x | 13.5x | 40x | 計算性能 |
| chip8_emulator | 1.0x | 13.5x | 60x | ゲーム性能 |
| enhanced_kilo_editor | 1.0x | 13.5x | 45x | エディタ性能 |
| tinyproxy | 1.0x | 13.5x | 35x | ネットワーク性能 |
## 🎯 実装ロードマップ
### ✅ 完了済み
- [x] ny-echo基本I/O検証
- [x] ny-array-bench性能基準
- [x] chip8_emulatorゲーム・グラフィック
- [x] enhanced_kilo_editor実用ツール
- [x] tinyproxyネットワーク
### 🚧 実装予定(論文・ベンチマーク用)
- [ ] binary-treesGC性能測定
- [ ] n-body数値計算
- [ ] mandelbrot視覚的ベンチマーク
- [ ] JSON Stream Aggregatorプラグイン統一
### 🔮 将来候補
- [ ] レイトレーサーCPU集約的
- [ ] Lispインタープリター言語実装
- [ ] 静的サイトジェネレータ(実用性)
## 🤝 貢献方法