Commit graph

  • 1984d01242 core: Stage 3 — the *in* reader family is Clojure (50-io tier) Yogthos 2026-06-10 14:49:07 -04:00
  • 55a3ebf93f core: Stage 3 — sorted collections are pure Clojure (canonical port) Yogthos 2026-06-10 14:38:09 -04:00
  • d6c5552fda docs: RFC 0003 — transients semantics and why they stay in the Janet seed Yogthos 2026-06-10 13:58:47 -04:00
  • 0e3584884f core: AOT context image — init-cached recovers the bootstrap cost across processes Yogthos 2026-06-10 13:57:37 -04:00
  • bf885078f9
    Merge pull request #41 from jolt-lang/stage3-retire-bootstrap Dmitri Sotnikov 2026-06-10 13:32:21 -04:00
  • cbab7f66df core: Stage 3 — retire the bootstrap compiler (compiler.janet deleted) stage3-retire-bootstrap Yogthos 2026-06-10 13:32:14 -04:00
  • 90a35a5dc0
    Merge pull request #40 from jolt-lang/stage3-shrink2-hierarchy Dmitri Sotnikov 2026-06-10 13:19:12 -04:00
  • c1a54fa2de core: Stage 3 — the hierarchy system is pure Clojure (canonical port) stage3-shrink2-hierarchy Yogthos 2026-06-10 13:19:05 -04:00
  • 232e4b137c
    Merge pull request #39 from jolt-lang/stage3-tier-shrink Dmitri Sotnikov 2026-06-10 13:10:37 -04:00
  • d4c065edfe core: Stage 3 tier shrink — 26 pure-over-core leaves move to the overlay stage3-tier-shrink Yogthos 2026-06-10 13:10:30 -04:00
  • 6699ef47d3
    Merge pull request #38 from jolt-lang/stage3-ns-var Dmitri Sotnikov 2026-06-10 13:05:22 -04:00
  • 817495dd51 core: *ns* — the current-namespace dynamic var stage3-ns-var Yogthos 2026-06-10 13:05:15 -04:00
  • 4f872fce94
    Merge pull request #37 from jolt-lang/stage3-turn2b Dmitri Sotnikov 2026-06-10 12:54:12 -04:00
  • d61c86a068 core: Stage 3 turn 2b — host IO, ns introspection, thread-binding family stage3-turn2b Yogthos 2026-06-10 12:53:47 -04:00
  • a75a26860b
    Merge pull request #36 from jolt-lang/stage3-turn2 Dmitri Sotnikov 2026-06-10 12:43:36 -04:00
  • c6ccdcf4b1
    Merge pull request #35 from jolt-lang/ci-node24-bump Dmitri Sotnikov 2026-06-10 12:43:33 -04:00
  • c7b0ad9d84 core: Stage 3 turn 2a — close the implicit Janet root-env leak stage3-turn2 Yogthos 2026-06-10 12:43:08 -04:00
  • da69d00b2c ci: bump checkout/cache actions to v5 (Node 24) ci-node24-bump Yogthos 2026-06-10 12:31:44 -04:00
  • d0c605ac9d
    Merge pull request #34 from jolt-lang/fix-edn-regression Dmitri Sotnikov 2026-06-10 12:26:05 -04:00
  • d8ffe386e6 edn: fix strict-map? regression in edn->value; apply EDN built-in tags fix-edn-regression Yogthos 2026-06-10 12:25:45 -04:00
  • 517f7ba762
    Merge pull request #33 from jolt-lang/preflight-inst-sq Dmitri Sotnikov 2026-06-10 12:19:54 -04:00
  • e58be2fbd2 core: #inst instant values + syntax-quote literal collapse (spec 2.3/2.4) preflight-inst-sq Yogthos 2026-06-10 12:19:23 -04:00
  • 094152a8c3
    Merge pull request #32 from jolt-lang/fix-doc-refs Dmitri Sotnikov 2026-06-10 12:12:12 -04:00
  • b3f2b19bf7 docs: fix doc/ -> docs/ references missed in the consolidation merge fix-doc-refs Yogthos 2026-06-10 12:11:53 -04:00
  • 99f822b91a
    Merge pull request #31 from jolt-lang/reader-feature-keys Dmitri Sotnikov 2026-06-10 12:10:47 -04:00
  • 808ce6a725 docs: consolidate doc/ into docs/ reader-feature-keys Yogthos 2026-06-10 12:10:28 -04:00
  • fdfd086df6 reader: feature set #{:jolt :default}, clause-order matching (RFC 0002) Yogthos 2026-06-10 11:40:06 -04:00
  • 2224e40afc docs: spec §2 (reader) — grammar, reader-macro catalog, syntax-quote contract spec-reader-chapter Yogthos 2026-06-10 11:23:38 -04:00
  • 4d4402b75a
    Merge pull request #30 from jolt-lang/spec-35-vars-batch-a Dmitri Sotnikov 2026-06-10 23:17:26 +08:00
  • eb7a9f1b20 core: spec 35-var batch A — 1.11 parsers, map/partition variants, with-redefs, ns fns spec-35-vars-batch-a Yogthos 2026-06-10 11:16:54 -04:00
  • 894af34b4c
    Merge pull request #29 from jolt-lang/language-spec-rfc Dmitri Sotnikov 2026-06-10 22:57:09 +08:00
  • 7003926eda docs: language specification RFC + spec skeleton with normative exemplars language-spec-rfc Yogthos 2026-06-10 10:53:44 -04:00
  • bd5142abac
    Merge pull request #28 from jolt-lang/strict-map-coll-predicates Dmitri Sotnikov 2026-06-10 22:35:17 +08:00
  • 526de12ad1 core: strict map?/coll? — tagged structs are values, sorted colls are colls strict-map-coll-predicates Yogthos 2026-06-10 10:34:59 -04:00
  • b836a5d499
    Merge pull request #27 from jolt-lang/uuid-support Dmitri Sotnikov 2026-06-10 22:27:56 +08:00
  • e44a7a9820 core: proper uuid support — fix random-uuid, add parse-uuid, real uuid values uuid-support Yogthos 2026-06-10 10:27:24 -04:00
  • c14c129627
    Merge pull request #26 from jolt-lang/stage2-freeze-punt-set Dmitri Sotnikov 2026-06-10 21:54:47 +08:00
  • e3b672362d test: freeze the punt set — fallback-zero asserts the exhaustive fallback surface stage2-freeze-punt-set Yogthos 2026-06-10 09:54:21 -04:00
  • f1ccc4b7f2
    Merge pull request #25 from jolt-lang/stage2-tier6-dispatch-misc Dmitri Sotnikov 2026-06-10 21:52:02 +08:00
  • 719efc56ce core: Stage 2 tier 6c — dispatch-table ops + misc compile (macros/plain invokes) stage2-tier6-dispatch-misc Yogthos 2026-06-10 09:51:42 -04:00
  • b49cb5c934
    Merge pull request #24 from jolt-lang/stage2-tier6-ns-fns Dmitri Sotnikov 2026-06-10 21:37:26 +08:00
  • b11a072ea3 core: Stage 2 tier 6b — ns-introspection fns compile as ordinary invokes stage2-tier6-ns-fns Yogthos 2026-06-10 09:37:08 -04:00
  • d18ca7abad
    Merge pull request #23 from jolt-lang/stage2-tier6-var-fns Dmitri Sotnikov 2026-06-10 21:30:09 +08:00
  • d002627d8e core: Stage 2 tier 6a — var fns compile as ordinary invokes stage2-tier6-var-fns Yogthos 2026-06-10 09:29:53 -04:00
  • 2a3a5f3289
    Merge pull request #22 from jolt-lang/fix-sq-symbol-compile-ns Dmitri Sotnikov 2026-06-10 21:23:43 +08:00
  • 1675d88778 core: sq-symbol qualifies unresolved syms against :compile-ns, not the analyzer's ns fix-sq-symbol-compile-ns Yogthos 2026-06-10 09:22:54 -04:00
  • dc57052780
    Merge pull request #21 from jolt-lang/test-speedup Dmitri Sotnikov 2026-06-10 21:17:42 +08:00
  • 771cd10564
    Merge pull request #20 from jolt-lang/stage2-task3-deliberate-fallback Dmitri Sotnikov 2026-06-10 21:17:38 +08:00
  • 920fafe032 test: ~11x faster gate — ctx snapshot/fork + parallel suite battery test-speedup Yogthos 2026-06-10 09:11:58 -04:00
  • 29fdd8ff7f compiler: interpreter fallback is deliberate-only (Stage 2 Task 3) stage2-task3-deliberate-fallback Yogthos 2026-06-10 08:48:19 -04:00
  • 3e9fe8d0fb
    Comprehensive spec (#19) Dmitri Sotnikov 2026-06-10 20:33:22 +08:00
  • 28a2411926 core: fix stale comment — by-comparator sorted ctors are implemented comprehensive-spec Yogthos 2026-06-10 08:16:31 -04:00
  • fefcf2c99b remove old doc Yogthos 2026-06-10 08:13:25 -04:00
  • afef55704c core: close surfaced gaps — first-class sorted colls, with-out-str, rand arity, deref reduced Yogthos 2026-06-10 08:00:36 -04:00
  • afb7d17352
    core: fix jolt-265 — syntax-quote fully-qualifies core syms to clojure.core/ (#18) Dmitri Sotnikov 2026-06-10 11:41:42 +08:00
  • ae8b635602 test: comprehensive spec — regex + sorted colls + random/predicate gaps Yogthos 2026-06-09 23:35:51 -04:00
  • 977c768575 core: fix jolt-265 — syntax-quote fully-qualifies core syms to clojure.core/ fix-jolt-265 Yogthos 2026-06-09 23:01:54 -04:00
  • ae6e771b18
    Jank derived spec tests (#17) Dmitri Sotnikov 2026-06-10 09:39:33 +08:00
  • e859d3e8e7 core: fix 5 Clojure-conformance gaps surfaced by jank tests jank-derived-spec-tests Yogthos 2026-06-09 21:32:51 -04:00
  • 3c1e0214dd test: adapt jank's form/reader tests into spec suites; fix case no-match Yogthos 2026-06-09 20:40:59 -04:00
  • 11fb5a7de6
    Stage2 task2 tier5 (#16) Dmitri Sotnikov 2026-06-10 08:13:42 +08:00
  • bb2a35fea0 core: Stage 2 Task 2 tier 5b — compile deftype + defrecord stage2-task2-tier5 Yogthos 2026-06-09 19:44:09 -04:00
  • 3680ee6d58 core: Stage 2 Task 2 tier 5a — compile defmulti + defmethod Yogthos 2026-06-09 16:47:45 -04:00
  • 63d92cd122
    Stage2 task2 tier4b (#15) Dmitri Sotnikov 2026-06-10 04:34:53 +08:00
  • 0626b66987 test/core: cover ns form + :use; fix use-impl spec parsing stage2-task2-tier4b Yogthos 2026-06-09 16:23:54 -04:00
  • 8e98a16e25 core: Stage 2 Task 2 tier 4b — compile ns (+ use/import/refer-clojure) Yogthos 2026-06-09 16:07:38 -04:00
  • e8c19c351f
    core: Stage 2 Task 2 tier 4a — compile require + in-ns (#14) Dmitri Sotnikov 2026-06-10 03:37:55 +08:00
  • 3709c868e6 core: Stage 2 Task 2 tier 4a — compile require + in-ns stage2-task2-tier4 Yogthos 2026-06-09 15:34:24 -04:00
  • 124cbf370a
    Stage2 task2 (#13) Dmitri Sotnikov 2026-06-10 03:20:44 +08:00
  • 117b4d86f4 core: Stage 2 Task 2 tier 3 — compile (var x) + binding stage2-task2 Yogthos 2026-06-09 14:46:17 -04:00
  • cd5a971434 core: Stage 2 Task 2 tier 2b — compile reify (make-reified as a fn) Yogthos 2026-06-09 14:38:39 -04:00
  • 70176005db core: Stage 2 Task 2 tier 2a — compile defprotocol/extend-type/extend-protocol Yogthos 2026-06-09 14:29:33 -04:00
  • 534007641e
    Stage2 compile only (#12) Dmitri Sotnikov 2026-06-10 02:20:38 +08:00
  • 0bffc5534f core: Stage 2 Task 2 tier 1 — compile syntax-quote + definterface/extend/proxy stage2-compile-only Yogthos 2026-06-09 13:52:31 -04:00
  • 8a9e386fa7 docs: clarify fn*/let*/loop* take plain symbols only (jolt-f79) Yogthos 2026-06-09 13:35:08 -04:00
  • d1d3f390ff core: fn*/let*/loop* are plain-symbol primitives, matching Clojure (jolt-f79) Yogthos 2026-06-09 13:14:34 -04:00
  • 20da34a432 core: wrap macro expanders in fn (not fn*) so destructured arglists compile Yogthos 2026-06-09 08:52:01 -04:00
  • ad5216a178 core: compile macro expanders via staged bootstrap (Stage 2 Task 1) Yogthos 2026-06-09 08:27:00 -04:00
  • 1ded89b47b
    Stage1 analyzer parity (#11) Dmitri Sotnikov 2026-06-09 12:24:37 +08:00
  • 1804b3011e compiler: compile set?/disj as plain fns (close the last Stage-1 fallback gap) stage1-analyzer-parity Yogthos 2026-06-09 00:04:11 -04:00
  • 3da5a5fcfa docs: partition-all letfn is for minimal realization, not jolt-zxw Yogthos 2026-06-08 23:55:03 -04:00
  • df59a04b83 test: document the 4004 -> 4034 baseline raise (partition-all/repeatedly + char/take fixes) Yogthos 2026-06-08 23:52:51 -04:00
  • 0fa55cd670 core: migrate repeatedly to Clojure + fix char-not-callable / take count validation Yogthos 2026-06-08 23:51:43 -04:00
  • cab1a75b75 core: migrate partition-all to the Clojure overlay (minimal realization) Yogthos 2026-06-08 23:43:00 -04:00
  • 2c31a9e3bc test: raise clojure-test-suite baseline 3981 -> 4004 (lazy-fn migration coverage) Yogthos 2026-06-08 23:28:59 -04:00
  • cd8f11934b core: migrate 7 lazy seq fns from the Janet seed to the Clojure overlay (40-lazy) Yogthos 2026-06-08 23:27:41 -04:00
  • 9e6abcd540 test: fallback-zero harness — assert non-stateful forms compile (not interpret) Yogthos 2026-06-08 22:38:49 -04:00
  • b6d9247b80 compiler: self-hosted analyzer compiles set literals (#{…}) Yogthos 2026-06-08 22:38:35 -04:00
  • fdf2c742c4 remove handoff file Yogthos 2026-06-08 19:44:32 -04:00
  • 851055f053 remove .calva from git Yogthos 2026-06-08 19:31:26 -04:00
  • d3194aae59
    Compiler research (#10) Dmitri Sotnikov 2026-06-09 07:30:25 +08:00
  • c3b912ca73 update readme compiler-research Yogthos 2026-06-08 19:21:53 -04:00
  • e9f7e29da2 docs: update README for Option A laziness + vendored test suite Yogthos 2026-06-08 19:19:51 -04:00
  • 597f76a753 test/ci: make clojure-test-suite per-file deadline configurable (JOLT_SUITE_TIMEOUT) Yogthos 2026-06-08 19:13:30 -04:00
  • 3e52c90532 test/ci: vendor clojure-test-suite as a submodule; run it in CI Yogthos 2026-06-08 18:57:38 -04:00
  • 9a9de08047 core: fix Option-A suite regressions — nil lazy elements + non-seqable input Yogthos 2026-06-08 18:50:36 -04:00
  • a68210e440 core: jolt-cru — partition-all/partition-by transducer (1-arg) arities Yogthos 2026-06-08 18:13:49 -04:00
  • c7378f4be0 core: jolt-b56 — lazy sequence (the laziness-coupled straggler) Yogthos 2026-06-08 18:00:05 -04:00
  • da2b065f46 core: jolt-vzm — every? short-circuits lazily (boundary audit) Yogthos 2026-06-08 17:52:55 -04:00
  • c78587bfc3 docs: phase-5.md — jolt-r81 root-fixed (lazy-seq moved to early tier), not letfn-worked-around Yogthos 2026-06-08 17:48:19 -04:00