jolt/host/chez/java
Yogthos e5563ba375 Class/forName honesty + class/isa? conformance for builtins
Class/forName claimed every java.*/clojure.* name found (and any "x.y.Class"
matched the registered Class via a short-name fallback), so a library's
(class-found? "optional.Dep") feature-probe always said yes — tools.logging then
tried to build the java.util.logging / log4j backends jolt lacks and crashed.
Resolve forName by exact registry lookup + an honest prefix that excludes the
unbacked optional packages (java.util.logging, javax.management), so the probe
sees them absent and skips the backend.

class of a persistent collection / namespace now reports its JVM class name
(clojure.lang.PersistentHashSet, …Namespace, …) instead of jolt's internal :set/
:object tag, and isa? consults JVM class assignability — Object as every class's
root plus a modeled clojure.lang/java.util hierarchy — so (isa? (class x) C) and a
class-keyed multimethod dispatch like the JVM (e.g. (isa? Keyword Object) was
false). Adds the bare class tokens (Fn/Namespace/Set/…) these dispatch on.

(type x) is unchanged — it keeps jolt's documented internal-keyword form. Six
JVM-certified corpus rows. make test green, 0 new divergences.
2026-06-26 17:02:39 -04:00
..
async.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
bigdec.ss Add bigdec min/max (review follow-up) 2026-06-25 20:22:26 -04:00
byte-buffer.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
concurrency.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
dot-forms.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
ffi.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
host-class.ss Class/forName honesty + class/isa? conformance for builtins 2026-06-26 17:02:39 -04:00
host-static-classes.ss Class/forName honesty + class/isa? conformance for builtins 2026-06-26 17:02:39 -04:00
host-static-methods.ss Class/forName honesty + class/isa? conformance for builtins 2026-06-26 17:02:39 -04:00
host-static.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
inst-time.ss java.time: parse fractional seconds in formatter-based date parsing (#240) 2026-06-26 19:49:49 +00:00
io-streams.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
io.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
java-time.ss java.time: complete LocalTime/LocalDate/Year/YearMonth ChronoField coverage (#239) 2026-06-26 19:12:40 +00:00
math.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
natives-array.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
natives-queue.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
natives-str.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00
records-interop.ss Group the JVM interop shims under host/chez/java/ 2026-06-25 18:35:44 -04:00