Commit graph

  • c8810ee4aa core: move nfirst to the Clojure overlay Yogthos 2026-06-06 11:49:09 -04:00
  • 30a308f3ef core: start moving clojure.core to Clojure (overlay loaded at init) Yogthos 2026-06-06 11:45:31 -04:00
  • 984af02532 loader: drop write-only compiled-form cache and its unused helpers Yogthos 2026-06-06 11:40:27 -04:00
  • 497970029d self-host: make it the only compile path; drop the bootstrap as a selectable path Yogthos 2026-06-06 11:34:02 -04:00
  • 34b880f0d6 conformance: guard the self-hosted pipeline too (218/218 in all three modes) Yogthos 2026-06-06 10:29:36 -04:00
  • 3afd1c6142 self-host: analyzer compiles to fast bytecode (fib(30) 0.52s) Yogthos 2026-06-06 10:25:05 -04:00
  • 06d5f51d4a self-host: compile the analyzer (full-suite parity, fast); fix interp multi-arity Yogthos 2026-06-06 09:59:28 -04:00
  • 98bf389f82 compiler: resolve :as aliases in macro detection; fix analyzer compile-ns Yogthos 2026-06-06 09:48:52 -04:00
  • b3a80507cc destructuring via shared expander; fix sequential let + nth nil-default Yogthos 2026-06-06 09:36:36 -04:00
  • b6e41bf499 self-host: JOLT_SELFHOST suite mode; keep analyzer interpreted for now Yogthos 2026-06-06 06:41:36 -04:00
  • f9df794475 self-host: compile loop/recur, recur-in-fn, and try Yogthos 2026-06-06 06:26:22 -04:00
  • 5624e99eb6 self-host: analyzer reaches full conformance parity via hybrid fallback Yogthos 2026-06-06 06:19:45 -04:00
  • 849449aada self-host: working portable analyzer -> IR -> Janet back end pipeline Yogthos 2026-06-06 06:11:42 -04:00
  • b1ac427bdd self-host: scaffold portable jolt-core + host/core architecture Yogthos 2026-06-06 05:44:12 -04:00
  • 6c61d445fb docs: compile-by-default, hybrid fallback, AOT; mark staged path 1/2/5 done Yogthos 2026-06-06 03:00:30 -04:00
  • 877373b7e6 aot: marshal compiled namespaces to bytecode images Yogthos 2026-06-06 02:57:32 -04:00
  • 62c5060093 compile by default in the shipped runtime Yogthos 2026-06-06 02:50:59 -04:00
  • 918e2798db compiler: resolve Janet-env fallback symbols; validate full suite under compile Yogthos 2026-06-06 02:49:53 -04:00
  • 6297a65617 compiler: fix compile-mode correctness (conformance 87->218/218) Yogthos 2026-06-06 02:41:18 -04:00
  • acf724b638 loader: share compile/interpret routing between load-ns and eval-one Yogthos 2026-06-06 02:19:21 -04:00
  • 2872f17c59 compiler: compile multi-arity, named, and variadic fns + recur-in-fn Yogthos 2026-06-06 01:56:01 -04:00
  • 145035d424 compiler phase 2: hybrid interpret/compile fallback Yogthos 2026-06-06 01:43:40 -04:00
  • 70711b4489 compiler phase 1: var-indirection for redefinable compiled globals Yogthos 2026-06-06 01:33:47 -04:00
  • 614962d535 Research notes: self-hosting compiler design Yogthos 2026-06-06 01:13:51 -04:00
  • 607779866e
    Merge pull request #9 from jolt-lang/selmer-io-destructuring Dmitri Sotnikov 2026-06-06 13:02:10 +08:00
  • 41f78e218f destructuring compliance, deps.edn comments, clojure.java.io shim Yogthos 2026-06-06 01:00:25 -04:00
  • 48a5f6258f
    Merge pull request #8 from jolt-lang/cuerdas-kebab Dmitri Sotnikov 2026-06-06 12:37:19 +08:00
  • 761a2b8f72 support type hints; make metadata coherent Yogthos 2026-06-06 00:36:10 -04:00
  • f749ec3c19 remove unused svg Yogthos 2026-06-06 00:12:09 -04:00
  • 3061c246d3
    Merge pull request #7 from jolt-lang/reader-char-literals Dmitri Sotnikov 2026-06-06 12:11:14 +08:00
  • d724aa7069 reader: one-char literals for non-symbol chars (\{ \( \, \%) Yogthos 2026-06-06 00:10:17 -04:00
  • b3a145f124
    Merge pull request #6 from jolt-lang/bake-stdlib Dmitri Sotnikov 2026-06-06 11:51:58 +08:00
  • f3f2c63ee7 bake the .clj stdlib into the binary Yogthos 2026-06-05 23:51:03 -04:00
  • 701f75da69
    Merge pull request #5 from jolt-lang/deps-phase34 Dmitri Sotnikov 2026-06-06 11:38:27 +08:00
  • 30c4bb0dc2 deps phases 3-4: uberscript bundling + conformance harness Yogthos 2026-06-05 23:36:40 -04:00
  • 6a1706df10
    Merge pull request #4 from jolt-lang/nrepl-port-cleanup Dmitri Sotnikov 2026-06-06 11:25:36 +08:00
  • becc94431c nrepl: remove .nrepl-port on exit Yogthos 2026-06-05 23:24:54 -04:00
  • 39049d6dba
    Merge pull request #3 from jolt-lang/cli-flags Dmitri Sotnikov 2026-06-06 11:21:15 +08:00
  • ed9d5fc998 cli: babashka-style flags (--version, --eval, --main, nrepl-server) Yogthos 2026-06-05 23:20:29 -04:00
  • f5205e8c0b
    Merge pull request #2 from jolt-lang/deps-research Dmitri Sotnikov 2026-06-06 11:12:31 +08:00
  • 91df7233b3 docs: add building-and-deps guide, link from README Yogthos 2026-06-05 23:11:16 -04:00
  • 503b0af050 test: fall back to /tmp when TMPDIR is unset (Linux CI) Yogthos 2026-06-05 23:07:20 -04:00
  • 4d8494d620 deps phase 2: jolt-deps tool resolves deps.edn git/local deps Yogthos 2026-06-05 23:05:47 -04:00
  • 6ea43fb623 deps phase 1: loader searches multiple source roots Yogthos 2026-06-05 22:53:20 -04:00
  • 47bcc743b4 Narrow deps.edn research to git-only on jpm Yogthos 2026-06-05 22:42:08 -04:00
  • 5e20ff21ff Research notes: loading Clojure libs via deps.edn Yogthos 2026-06-05 22:28:22 -04:00
  • 065f5d28c6
    Merge pull request #1 from jolt-lang/nrepl Dmitri Sotnikov 2026-06-06 10:23:52 +08:00
  • 673396e4ad docs: point README badge and clone URL at jolt-lang/jolt (repo moved) nrepl Yogthos 2026-06-05 22:05:46 -04:00
  • d00c3cc117 fix: pr-str/str of a var, and nREPL namespace switching Yogthos 2026-06-05 22:05:45 -04:00
  • 5b66cfaa97 test: cover the janet interop bridge and nREPL var rendering Yogthos 2026-06-05 21:43:15 -04:00
  • dd96b1900a test(nrepl): add watchdog + explicit exit so the integration test can't hang CI Yogthos 2026-06-05 21:26:32 -04:00
  • 8cbc695f99 feat(nrepl): nREPL server + client in Clojure on a Janet interop bridge Yogthos 2026-06-05 21:25:23 -04:00
  • 0f12598b06 docs: refresh README — CI badge, Janet 1.41/ev-channel requirement, jpm-clean note Yogthos 2026-06-05 20:12:53 -04:00
  • 8be7743b26 feat: futures on real OS threads (ev/thread) Yogthos 2026-06-05 20:00:02 -04:00
  • 120d6d73fa
    Fix markdown link formatting in README.md Dmitri Sotnikov 2026-06-06 06:35:16 +08:00
  • 533a643c2d
    Fix link to clojure-test-suite in README.md Dmitri Sotnikov 2026-06-06 06:34:56 +08:00
  • 11e44e1774 test: remove stale machine-specific bootstrap-test scratch file Yogthos 2026-06-05 18:33:01 -04:00
  • 5e69f71947 ci: run jpm bootstrap from inside the jpm checkout Yogthos 2026-06-05 18:30:27 -04:00
  • 1da6fce1ab ci: add GitHub Actions test workflow + document eval pipeline Yogthos 2026-06-05 18:14:29 -04:00
  • 3cf303578e feat(compile): Phase 2 — native ops + direct calls (fib30 50s -> 0.076s, ~660x) Yogthos 2026-06-05 18:00:46 -04:00
  • f74af5dbc5 feat(compile): Phase 1 — wire shared persistent env (compile mode now works across forms) Yogthos 2026-06-05 17:50:22 -04:00
  • b6e66e53d2
    fix link Dmitri Sotnikov 2026-06-06 05:22:39 +08:00
  • f24c9aa1fd chore: remove dev artifacts; keep only published code/tests/docs Yogthos 2026-06-05 15:45:04 -04:00
  • 54db79e927 feat: core.async Phase 3 — channel transducers + dropping/sliding buffers Yogthos 2026-06-05 15:40:24 -04:00
  • e8cb4605ac feat: core.async Phase 2 — dynamic var binding conveyance Yogthos 2026-06-05 15:22:38 -04:00
  • 7d1e1f42e1 feat: clojure.core.async on Janet fibers (Phase 1 — API layer) Yogthos 2026-06-05 15:17:15 -04:00
  • 858c7fed14 docs: bring EBNF grammar and project docs up to date Yogthos 2026-06-05 14:40:47 -04:00
  • ac33124ed4 docs: drop map-entry divergence note (key/val now distinguish entries from vectors) Yogthos 2026-06-05 14:22:26 -04:00
  • 360b23c8af feat: distinguish map entries from vectors; min-key NaN ordering; subvec float coercion Yogthos 2026-06-05 14:22:06 -04:00
  • ace1dcd124 chore: close strictness issue jolt-lko Yogthos 2026-06-05 14:07:56 -04:00
  • f7928af3e8 docs: update conformance note — Jolt now validates args like Clojure Yogthos 2026-06-05 14:07:41 -04:00
  • 740b50aef3 feat(strictness): subs validates bounds; assoc! bounds-checks vector index Yogthos 2026-06-05 14:07:14 -04:00
  • 6544d8ef44 feat(strictness): seq/shuffle/NaN?/nthrest/nthnext reject bad args Yogthos 2026-06-05 14:03:23 -04:00
  • f644b4b719 feat(strictness): merge rejects atomic/wrong-shape args into a map Yogthos 2026-06-05 13:57:05 -04:00
  • 2ca3fa4348 feat(strictness): first/rseq shape checks, assoc even-args + non-associative Yogthos 2026-06-05 13:50:11 -04:00
  • ff3cc7d6c0 feat(strictness): assoc bounds, dissoc/count map-only, subvec bounds, numerator/denominator, min-key empty Yogthos 2026-06-05 13:44:37 -04:00
  • b82477dac3 feat(strictness): peek/pop/vec/key/val reject malformed args Yogthos 2026-06-05 13:37:27 -04:00
  • e7a58a0ed6 test: fix transient/strictness spec case (use a set, not a length-2 list) Yogthos 2026-06-05 13:32:12 -04:00
  • a4a48a8520 feat(strictness): transient bang ops require a transient; conj! arities Yogthos 2026-06-05 11:09:38 -04:00
  • fb36577ee7 feat(strictness): num/cons/realized?/symbol/keyword reject malformed args Yogthos 2026-06-05 11:04:06 -04:00
  • 07d5b43fbb feat(strictness): numeric ops reject non-numbers/non-integers like Clojure Yogthos 2026-06-05 10:58:21 -04:00
  • 4238ec745b docs: document clojure-test-suite conformance and remaining divergence categories Yogthos 2026-06-05 10:31:45 -04:00
  • 66c8c1157b fix: conj 0-arg, conj onto nil (builds list), conj map into map Yogthos 2026-06-05 10:30:07 -04:00
  • a4d9d5f70b fix: print Infinity/-Infinity/NaN like Clojure (str and pr-str) Yogthos 2026-06-05 10:23:57 -04:00
  • bcdace7543 fix: case composite constants, associative?/reversible?, update non-fn args, nth nil Yogthos 2026-06-05 10:19:43 -04:00
  • 2ccfa675f7 fix: keyword/set/map as IFn in higher-order fns; nil-seq; take-nth/interpose/sort-by/min-key arities Yogthos 2026-06-05 10:10:22 -04:00
  • acfcf2f94b feat: read N/M/ratio/radix/exponent number literals; clean suite measurement Yogthos 2026-06-05 09:54:14 -04:00
  • 20ab88dd0c chore: beads sync for follow-up fixes Yogthos 2026-06-05 09:36:08 -04:00
  • 03652dce5d feat: ##Inf/##-Inf/##NaN literals, infinite?/NaN?, fix intval? for infinity Yogthos 2026-06-05 09:35:44 -04:00
  • 09532dac05 fix: transient invokable lookup, assoc! odd args, use-after-persistent! invalidation Yogthos 2026-06-05 09:29:36 -04:00
  • e75771084e fix: merge nil/empty + conj semantics to match Clojure Yogthos 2026-06-05 09:22:27 -04:00
  • 2885650ef6 fix: transducers/reduce short-circuit over infinite seqs via reduced Yogthos 2026-06-05 09:18:35 -04:00
  • ae2899ba61 chore: beads issue tracking for conformance gaps Yogthos 2026-06-05 09:05:41 -04:00
  • 0ca678a159 test: port clojure-test-suite as baseline-guarded integration battery Yogthos 2026-06-05 09:04:38 -04:00
  • f38d402445 feat: real transients backed by Janet arrays/tables (interop) Yogthos 2026-06-05 08:02:21 -04:00
  • a0943cb944 test: fold ported-clojure batteries into spec Yogthos 2026-06-05 07:50:16 -04:00
  • a6491d025c docs: add EBNF grammar for the reader syntax (doc/grammar.ebnf) Yogthos 2026-06-05 01:34:33 -04:00
  • e409edf8d9 chore: export beads (jolt-dd5 closed) Yogthos 2026-06-05 01:24:07 -04:00
  • 555cd7631e fix: catch binds unwrapped thrown value; var-set targets thread binding Yogthos 2026-06-05 01:23:52 -04:00
  • a681daf7b9 test: fold cljs ports into spec; add exceptions spec + gap coverage Yogthos 2026-06-05 01:12:39 -04:00