Commit Graph

687 Commits

Author SHA1 Message Date
7d1cdb2935 Merge branch 'main' of github.com-moecharm:moe-charm/nyash 2025-08-14 11:08:14 +09:00
f3ab3d11c4 Merge pull request #56 from moe-charm/copilot/fix-55
Phase 8.4: Complete AST→MIR Lowering for Object-Oriented Features
2025-08-14 11:04:10 +09:00
19011dc389 Add demonstration script showing Phase 8.4 achievements
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-14 01:49:44 +00:00
cdeb4818a7 Phase 8.4: Complete AST→MIR Lowering - Basic object operations implemented
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-14 01:48:40 +00:00
c7365d3dc9 feat(merge): integrate Phase 8.3 WASM Box Operations + Benchmark System
🎉 Successful merge of Copilot and Claude implementations:

**Copilot Contributions (Phase 8.3):**
-  WASM Box Operations: RefNew/RefGet/RefSet complete implementation
-  Memory management: BoxLayout, MemoryManager with standard types
-  WASM codegen: Box allocation, field access, type-safe operations
-  Runtime support: malloc, heap management, type ID system

**Claude Contributions (Benchmark System):**
-  Comprehensive benchmark framework (src/benchmarks.rs)
-  CLI integration: --benchmark, --iterations, --output options
-  3-backend performance comparison (Interpreter/VM/WASM)
-  280x WASM speedup verification system
-  Golden dump testing infrastructure

**Unified Features:**
- 🔧 execute_wasm_mode: Supports both output file and stdout
- 🔧 CLI arguments: All options preserved and functional
- 🔧 Error handling: Improved MIR verification messages
- 🔧 Build system: All modules properly integrated

**Next Steps Ready:**
- 📊 MIR diet planning (35→20 instructions)
- 🚀 Phase 8.4: AOT WASM native compilation
- 🧪 Golden dump automation

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-14 08:12:36 +09:00
eaf97401c7 Merge pull request #54 from moe-charm/copilot/fix-53
Phase 8.3: Implement WASM Box Operations - Complete "Everything is Box" in WebAssembly
2025-08-14 08:04:40 +09:00
a0a97620b8 Complete Phase 8.3 WASM Box Operations - Everything is Box in WASM
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 22:20:50 +00:00
8ec80a35c3 feat(benchmark): add comprehensive performance benchmarking system
🚀 Phase 8.2 PoC2 Achievement: 280x WASM performance boost proven\!

## New Features:
- Complete benchmark framework (src/benchmarks.rs)
- CLI integration: --benchmark --iterations options
- 3-backend comparison: Interpreter/VM/WASM
- Automated performance measurement & reporting

## Benchmark Results (100 iterations average):
- WASM: 0.17ms (280x faster than Interpreter\!)
- VM: 16.97ms (2.9x faster than Interpreter)
- Interpreter: 48.59ms (baseline)

## Added Files:
- benchmarks/bench_{light,medium,heavy}.nyash - Test cases
- benchmark_summary_20250814.md - Clean results
- wasm_demo/ - Browser execution environment

## Documentation Updates:
- docs/execution-backends.md - Added benchmark usage
- docs/CURRENT_TASK.md - Phase 8.3 Copilot coordination
- CLAUDE.md - Quick benchmark access

## Copilot Integration Ready:
- Phase 8.3 merge conflict avoidance strategy documented
- Benchmark framework ready for Box operation performance validation
- CLI integration preserved for future enhancements

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-14 07:19:23 +09:00
2c485c9444 docs(phase8.3): update Issue #53 with current progress and Copilot guidance
- Update current state with Phase 8.2 PoC2/PoC3 completion
- Add comprehensive test cases for Copilot implementation
- Include implementation guidance and quality assurance checklist
- Add technical baseline info (CLI, browser test env, docs)
- Provide RefNew implementation example for reference

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-14 06:51:07 +09:00
697223c8cf docs: move execution-backends.md to docs root and add quick access
- Move docs/説明書/execution-backends.md → docs/execution-backends.md
- Add execution backend guide link to CLAUDE.md quick start section
- Update relative path in docs/説明書/README.md
- Improve developer access to VM/WASM execution options

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-14 06:46:57 +09:00
c42e3560a2 Merge pull request #52 from moe-charm/copilot/fix-51
Phase 8: MIR→WASM Codegen - Complete foundation and basic arithmetic operations
2025-08-14 06:00:31 +09:00
8a7532a77b 🎉 Phase 8.2 PoC1 COMPLETE: MIR→WASM basic arithmetic working end-to-end!
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 13:19:43 +00:00
3335f26812 Phase 8.2 PoC1 Progress: WASM codegen mostly working, debugging Return instruction issue
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 13:15:02 +00:00
8276eeeb64 Phase 8.1 Complete: WASM backend foundation implementation
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 13:05:49 +00:00
a25777a31c Merge pull request #47 from moe-charm/copilot/fix-46
🐛 Fix VM missing ret instruction execution - Phase 7 async bug
2025-08-13 21:20:56 +09:00
28070ea2f2 Fix VM execution bug - include terminator instructions in execution loop
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 12:18:47 +00:00
42379a3694 docs: update Phase 7 planning and add correct Nyash philosophy test files
- Update CLAUDE.md with 32-thread build option
- Enhance phase7_async_mir.md with detailed implementation plan
- Add Obj class definition to phase6_ref_set_get.nyash
- Create phase6_ref_set_get_correct.nyash following Everything is Box philosophy
2025-08-13 21:06:37 +09:00
57b3f13e90 Merge branch 'main' of github.com-moecharm:moe-charm/nyash 2025-08-13 21:03:36 +09:00
bd1a3cb570 Merge pull request #45 from moe-charm/copilot/fix-44
Implement Phase 7: Async model in MIR (nowait/await) with FutureBox integration
2025-08-13 21:01:47 +09:00
cefac9051e Phase 7.4: Complete async MIR implementation with comprehensive tests
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 11:59:22 +00:00
f6e6e5bae4 Phase 7.2: Implement AST→MIR lowering for nowait/await expressions
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 11:48:53 +00:00
b59f0ee419 Phase 7.1: Add MIR instructions for async operations (FutureNew, FutureSet, Await)
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 11:46:01 +00:00
bb1771169c docs: update CURRENT_TASK with Native Phase 7 status and weak reference tests from ChatGPT5 2025-08-13 20:33:02 +09:00
ede4fcfe96 Merge branch 'main' - resolve conflict in phase6_ref_set_get.nyash 2025-08-13 20:12:11 +09:00
c5e784ca38 test(local): add Phase 6 VM sample (ref set/get) for acceptance run 2025-08-13 19:33:34 +09:00
3ebb30221b Merge pull request #43 from moe-charm/copilot/fix-42
Phase 6.1: Wire AST lowering for New/FieldAccess → MIR Ref ops; finalize Barrier no-op; add tests
2025-08-13 19:31:43 +09:00
9adb34ff58 Complete Phase 6.1: AST lowering for New/FieldAccess → MIR Ref ops with tests and VM field storage
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 10:26:46 +00:00
af3ad5e5e2 Implement core AST lowering for New/FieldAccess to MIR Ref ops with basic VM field storage
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 10:20:37 +00:00
bbd444230a Initial progress report: Phase 6.1 AST lowering for New/FieldAccess to MIR Ref ops
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 10:14:09 +00:00
5cbd8a7f82 docs(native-plan): add issue stubs for Phase 9 (JIT baseline), Phase 10 (AOT scaffolding), Phase 14 (Packaging/CI) 2025-08-13 18:54:03 +09:00
fbc3cd9876 docs(native-plan): add Phase 8 MIR→WASM detailed issue; align copilot_issues index; expand README phase 8 section 2025-08-13 18:54:02 +09:00
621bf7cc3d docs: reorganize into 説明書/予定/archive; update docs/README.md and CLAUDE.md; move root .nyash to local_tests; consolidate native-plan notes into README + archive 2025-08-13 18:54:02 +09:00
7941c4ed6a docs(guides): add Phase 6 issue draft (Box ops minimal) 2025-08-13 18:53:59 +09:00
502fcfdcff Merge pull request #40 from moe-charm/copilot/fix-39
Implement Phase 6: Box reference operations in MIR/VM (RefNew/RefGet/RefSet, WeakNew/WeakLoad, BarrierRead/Write)
2025-08-13 18:52:14 +09:00
699979b5b1 Complete Phase 6 implementation with documentation and comprehensive testing
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 09:47:10 +00:00
84d2aac8da Implement Phase 6 Box reference operations in MIR/VM - RefNew/RefGet/RefSet/WeakNew/WeakLoad/Barrier*
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 09:45:22 +00:00
65ce7a5f8c 📍 Add analysis target directory info to report
Shows which directory is being analyzed in the report table:
| **分析対象** | nyash ディレクトリ全体 |

This makes it clear at a glance what scope the analysis covers.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-13 17:00:24 +09:00
8754b92ed3 Merge pull request #38 from moe-charm/copilot/fix-37
Implement Phase 5.2: Static box Main lowering for MIR compilation
2025-08-13 16:57:31 +09:00
cd0039e083 Implement Phase 5.2: Static box Main lowering for MIR compilation
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 07:54:56 +00:00
3082c77ecd Implement Phase 5.2: static box Main lowering to MIR
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 07:53:14 +00:00
ecda4da54a 🧹 Clean up Git tracking: Exclude Rust dev files and LaTeX outputs
- Add nyash-rust/ directory to .gitignore
- Exclude LaTeX generated files (*.aux, *.log, *.out, etc.)
- Keep repository clean from development artifacts

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-13 16:50:16 +09:00
721bea5068 Initial analysis and setup for Phase 5.2: static box Main lowering
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 07:47:08 +00:00
6a2a4fe24a 🔧 Fix nekocode analysis path and error handling
- Change analysis path from src/ to . (root)
- Improve error handling without || true
- Better regex patterns for result extraction  
- Add language count detection
- Japanese error messages for clarity

Fixes: 分析されたファイル 0 → 90+ files
2025-08-13 16:47:03 +09:00
dd123cd3f9 Merge pull request #36 from moe-charm/copilot/fix-35
Phase 5.1: Implement Local variable and TryCatch lowering in MirBuilder
2025-08-13 16:24:59 +09:00
e75e3e15e8 Complete Phase 5.1: Add terminator handling for nested control flow
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 07:17:45 +00:00
ba568f7dfb Implement Local and TryCatch lowering in MirBuilder
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 07:13:53 +00:00
3b040f1587 🔧 Fix NekoCode GitHub Actions: update to use releases/nekocode-rust binary
- Change download path from bin/nekocode_ai to releases/nekocode-rust
- Update command from nekocode_ai to nekocode-rust
- This should fix the 0 files analyzed issue in PR analysis

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-13 15:51:12 +09:00
384ef54adf Merge pull request #34 from moe-charm/copilot/fix-33
Implement Phase 5: Control flow & exceptions in MIR/VM (loop, try/catch/throw)
2025-08-13 15:43:46 +09:00
6df09fa86b Complete Phase 5: End-to-end control flow & exception testing - Full pipeline verified
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 06:27:03 +00:00
d3a85b2305 Implement Phase 5: Control flow & exceptions in MIR/VM - Core functionality complete
Co-authored-by: moe-charm <217100418+moe-charm@users.noreply.github.com>
2025-08-13 06:23:28 +00:00