Files
hakorune/dev/selfhosting
moe-charm b8bdb867d8 Merge selfhosting-dev into main (Core-13 pure CI/tests + LLVM bridge) (#126)
* WIP: sync before merging origin/main

* fix: unify using/module + build CLI; add missing helper in runner; build passes; core smokes green; jit any.len string now returns 3

* Apply local changes after merging main; keep docs/phase-15 removed per main; add phase-15.1 docs and tests

* Remove legacy docs/phase-15/README.md to align with main

* integration: add Core-13 pure CI, tests, and minimal LLVM execute bridge (no docs) (#125)

Co-authored-by: Tomoaki <tomoaki@example.com>

---------

Co-authored-by: Selfhosting Dev <selfhost@example.invalid>
Co-authored-by: Tomoaki <tomoaki@example.com>
2025-09-07 07:36:15 +09:00
..

SelfHosting Dev (JIT / VM)

Focus: Ny → MIR → MIRInterp → VM/JIT quick loops to validate semantics and bootstrap paths.

Quickstart

  • Core build (JIT):
    • cargo build --release --features cranelift-jit
  • Core smokes (plugins disabled):
    • NYASH_CLI_VERBOSE=1 ./tools/jit_smoke.sh
  • Roundtrip (parser pipe + json):
    • ./tools/ny_roundtrip_smoke.sh
  • Plugins smoke (optional gate):
    • NYASH_SKIP_TOML_ENV=1 ./tools/smoke_plugins.sh
  • Using/Resolver E2E sample (optional):
    • ./tools/using_e2e_smoke.sh (requires --enable-using)
  • Bootstrap c0→c1→c1' (optional):
    • ./tools/bootstrap_selfhost_smoke.sh

Docs

  • Onepage guide: docs/self-hosting.md

Flags

  • NYASH_DISABLE_PLUGINS=1: stabilize core path
  • NYASH_LOAD_NY_PLUGINS=1: enable nyash.toml ny_plugins
  • NYASH_ENABLE_USING=1: using/namespace enable
  • NYASH_SKIP_TOML_ENV=1: suppress [env] mapping in nyash.toml

Tips

  • For debug, set NYASH_CLI_VERBOSE=1.
  • Keep temp artifacts under this folder (dev/selfhosting/_tmp/) to avoid polluting repo root.