cljgo 0.2.0
Changelog
- 0341717: ADR 0027: spike lifecycle (spike -> close -> ADR -> spec -> apply) (#13) (@muthuishere)
- f8b044e: ADR 0028-0031: decisions from spikes S12-S15 (#18) (@muthuishere)
- b30c89e: ADR 0029 applied: numeric tower clusters A/B/D/E/F (#21) (@muthuishere)
- de19981: ADR 0032-0034: decisions from spikes S16-S18 (#28) (@muthuishere)
- a24bab0: Apply ADR 0028: release binaries pin the published runtime module (#19) (@muthuishere)
- 7a5062e: Apply ADR 0030: format/printf via translate-then-delegate (#20) (@muthuishere)
- 3081d73: Apply ADR 0031: pkg/nrepl + cljgo nrepl + clojure.repl/doc (#24) (@muthuishere)
- 20d4bce: Apply ADR 0032: BigDecimal is an unscaled big.Int + int32 scale (#33) (@muthuishere)
- a9ca3cd: Apply ADR 0033: Go-interop host facts resolve from the generated module (#32) (@muthuishere)
- 6bd9ebb: Apply ADR 0034: getg()-based goroutine-ID lookup, boot 8.9x faster (#31) (@muthuishere)
- e8803de: Batch 4 transducers (ADR 0022): transduce/eduction/sequence + 1-arity xform forms; suite 134 -> 144 (#8) (@muthuishere)
- 26a09fd: Batch 4: arrays + volatile! (ADR 0022) — a cljgo array is a Go slice (ADR 0025) (#7) (@muthuishere)
- aea06c0: Batch: NaN?/array-map/sorted-map/sorted-map-by/subseq/rsubseq (ADR 0022) (#6) (@muthuishere)
- 705d0a5: Batch: harness fixes + misc core vars (ADR 0022) — suite 134 -> 137 (#9) (@muthuishere)
- 22e476d: Dedup abs: PR #21 and #22 both registered it (#23) (@muthuishere)
- 99909c3: Fix 11 clojure-test-suite fail files: laziness, regex identity, NaN, etc. (#29) (@muthuishere)
- dee4812: Fix a batch of clojure-test-suite ERROR files: suite 184 -> 205 (#error 36 -> 15) (#30) (@muthuishere)
- 439f661: Fix the near-miss suite failures: 13 single-assertion bugs (ADR 0022) (#10) (@muthuishere)
- a9858b3: Hierarchies + resolve/special-form fix + missing vars (ADR 0022 batch E): suite 162 -> 179 (#22) (@muthuishere)
- 64fac87: Link the site from the README; point the repo homepage at it (#12) (@muthuishere)
- 4ff3cea: Perf ratio budget is host-relative too; fix a duplicate ADR number (#4) (@muthuishere)
- 4f92a6e: README/release notes overclaimed what a downloaded binary can do (#3) (@muthuishere)
- d64b01d: Refresh the suite number: 23.6% -> 66.9% (#11) (@muthuishere)
- f3d7de6: Spike S12: cljgo build from a downloaded binary — verdict YES (#14) (@muthuishere)
- e895f08: Spike S13: numeric-tower divergence table (closes toward ADR 0029) (#16) (@muthuishere)
- 4ac1ef6: Spike S14: Java format grammar on a Go host (closes toward ADR 0030) (#17) (@muthuishere)
- e05be0e: Spike S15: minimal nREPL (closes toward ADR 0031) (#15) (@muthuishere)
- e357250: Spike S16: scaled BigDecimal — 159-row oracle corpus, candidate-(a) prototype at 159/159, migration inventory (#27) (@muthuishere)
- 50f8013: Spike S17: interop host-facts without a source tree (#25) (@muthuishere)
- 46b1f30: Spike S18: ubuntu boot anomaly (ADR 0024 open question) (#26) (@muthuishere)
- edf0c01: suite -v: say WHY each file fails, not just that it did (#5) (@muthuishere)
- 792fda8: v0.2.0 prep: suite 89.7%, build-from-binary is current, nREPL in status (#34) (@muthuishere)
Install
go install github.com/muthuishere/cljgo/cmd/cljgo@v0.2.0Or download a binary above and put it on your PATH.
cljgo repl, cljgo run and Go interop work from the binary alone, with
no Go toolchain installed. cljgo build additionally needs the Go
toolchain and a checkout of this repo — the generated module replaces
the runtime to a local source tree, so set CLJGO_SRC to your clone or run
inside it. Known v0 limitation (ADR 0013); publishing the runtime as a real
Go module retires it.
cljgo's own code is MIT. The vendored runtime under pkg/lang/ is
EPL-1.0, from Glojure — see
NOTICE.