🎉 Phase 10.10: Nyash→JIT→Native EXE achieved\! (20 days from inception\!)
Revolutionary milestone: Complete native executable generation pipeline - Created minimal nyrt (Nyash Runtime) library for standalone executables - Implemented plugin bridge functions (nyash_plugin_invoke3_i64 etc) - Added birth handle exports (nyash.string.birth_h) for linking - Changed export name from main→ny_main to allow custom entry point - Successfully generated and executed native binary returning "ny_main() returned: 1" Timeline of miracles: - 2025-08-09: Nyash language created (first commit) - 2025-08-13: JIT planning started (4 days later) - 2025-08-29: Native EXE achieved (today - just 20 days total\!) This proves the plugin Box C ABI unification strategy works perfectly for both JIT execution and AOT native compilation. The same plugin system that enables dynamic loading now powers static linking for zero-overhead native executables\! Next: Expand AOT support for more instructions and optimize nyrt size. 🚀 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@ -31,7 +31,9 @@ cranelift-jit = [
|
||||
"dep:cranelift-codegen",
|
||||
"dep:cranelift-frontend",
|
||||
"dep:cranelift-module",
|
||||
"dep:cranelift-jit"
|
||||
"dep:cranelift-jit",
|
||||
"dep:cranelift-object",
|
||||
"dep:cranelift-native"
|
||||
]
|
||||
|
||||
[lib]
|
||||
@ -139,6 +141,8 @@ cranelift-codegen = { version = "0.103", optional = true }
|
||||
cranelift-frontend = { version = "0.103", optional = true }
|
||||
cranelift-module = { version = "0.103", optional = true }
|
||||
cranelift-jit = { version = "0.103", optional = true }
|
||||
cranelift-object = { version = "0.103", optional = true }
|
||||
cranelift-native = { version = "0.103", optional = true }
|
||||
|
||||
# WASM backend dependencies (Phase 8) - optional for faster builds
|
||||
wabt = { version = "0.10", optional = true }
|
||||
|
||||
Reference in New Issue
Block a user