Compiler research (#10)
adds self-hosted compiler is functionally: - The default compile path is the portable pipeline using jolt.analyzer (Clojure) → host-neutral IR → backend.janet. - The analyzer is itself Clojure, compiled by jolt for true self-hosting. - bootstrap-fixpoint passes (stage1 == stage2 == stage3): rebuilding the compiler on its own output. - clojure.core is now self-hosted in the overlay. - Stateful forms (defmacro/ns/deftype/defmulti/require/in-ns) are interpreted by design.
This commit is contained in:
parent
607779866e
commit
d3194aae59
68 changed files with 6590 additions and 2019 deletions
9
.github/workflows/tests.yml
vendored
9
.github/workflows/tests.yml
vendored
|
|
@ -10,10 +10,17 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
env:
|
||||
JANET_VERSION: v1.41.2 # bump to match the version Jolt is developed against
|
||||
# Per-file deadline for the clojure-test-suite battery. Finite files finish
|
||||
# in well under 1s; the genuinely-infinite ones get killed at any deadline.
|
||||
# A generous value gives slow CI runners headroom so a sub-second file
|
||||
# spiking doesn't time out and drop total-pass below the baseline.
|
||||
JOLT_SUITE_TIMEOUT: "20"
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
# vendor/sci is needed by the SCI bootstrap/runtime integration tests.
|
||||
# Submodules: vendor/sci (SCI bootstrap/runtime tests) and
|
||||
# vendor/clojure-test-suite (the cross-dialect conformance battery,
|
||||
# asserted against a baseline by clojure-test-suite-test.janet).
|
||||
submodules: recursive
|
||||
|
||||
- name: Cache Janet build
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue