clojure.core in jank
- Implemented
- 89.0%604 / 679
- Mismatched
- 70
- Missing
- 75
- Dialect-Only
- 71
Metadata Mismatches (70)
Vars present in both Clojure (JVM) and this surface but with differing arglists, :macro flag, or :dynamic flag.
| Var | Difference |
|---|---|
* | arglists Clojure (JVM): ([] [x] [x y] [x y & more])this surface: ([] [x] [l r] [l r & args]) |
*assert* | :dynamic Clojure (JVM): false this surface: true |
*compile-files* | :dynamic Clojure (JVM): false this surface: true |
*compile-path* | :dynamic Clojure (JVM): false this surface: true |
*compiler-options* | :dynamic Clojure (JVM): false this surface: true |
*err* | :dynamic Clojure (JVM): false this surface: true |
*file* | :dynamic Clojure (JVM): false this surface: true |
*flush-on-newline* | :dynamic Clojure (JVM): false this surface: true |
*in* | :dynamic Clojure (JVM): false this surface: true |
*ns* | :dynamic Clojure (JVM): false this surface: true |
*out* | :dynamic Clojure (JVM): false this surface: true |
*print-dup* | :dynamic Clojure (JVM): false this surface: true |
*print-meta* | :dynamic Clojure (JVM): false this surface: true |
*print-readably* | :dynamic Clojure (JVM): false this surface: true |
*read-eval* | :dynamic Clojure (JVM): false this surface: true |
*unchecked-math* | :dynamic Clojure (JVM): false this surface: true |
*warn-on-reflection* | :dynamic Clojure (JVM): false this surface: true |
+ | arglists Clojure (JVM): ([] [x] [x y] [x y & more])this surface: ([] [x] [l r] [l r & args]) |
- | arglists Clojure (JVM): ([x] [x y] [x y & more])this surface: ([x] [l r] [l r & args]) |
/ | arglists Clojure (JVM): ([x] [x y] [x y & more])this surface: ([x] [l r] [l r & args]) |
< | arglists Clojure (JVM): ([x] [x y] [x y & more])this surface: ([x] [l r] [l r & args]) |
<= | arglists Clojure (JVM): ([x] [x y] [x y & more])this surface: ([x] [l r] [l r & args]) |
> | arglists Clojure (JVM): ([x] [x y] [x y & more])this surface: ([x] [l r] [l r & args]) |
>= | arglists Clojure (JVM): ([x] [x y] [x y & more])this surface: ([x] [l r] [l r & args]) |
add-watch | arglists Clojure (JVM): ([reference key fn])this surface: ([reference key f]) |
alias | arglists Clojure (JVM): ([alias namespace-sym])this surface: ([alias ns-sym]) |
alter-meta! | arglists Clojure (JVM): ([iref f & args])this surface: ([o f & args]) |
and | arglists Clojure (JVM): ([] [x] [x & next])this surface: ([] [x] [x & more]) |
aset | arglists Clojure (JVM): ([array idx val] [array idx idx2 & idxv])this surface: ([array idx & more]) |
assoc! | arglists Clojure (JVM): ([coll key val] [coll key val & kvs])this surface: ([coll k v] [coll k v & kvs]) |
atom | arglists Clojure (JVM): ([x] [x & options])this surface: ([x]) |
compile | arglists Clojure (JVM): ([lib])this surface: ([path]) |
defmacro | arglists Clojure (JVM): ([name doc-string? attr-map? [params*] body] [name doc-string? attr-map? ([params*] body) + attr-map?])this surface: ([name & args]) |
defmulti | arglists Clojure (JVM): ([name docstring? attr-map? dispatch-fn & options])this surface: ([mm-name & options]) |
disj! | arglists Clojure (JVM): ([set] [set key] [set key & ks])this surface: ([set] [set elem] [set elem & elems]) |
dissoc | arglists Clojure (JVM): ([map] [map key] [map key & ks])this surface: ([m] [m k] [m k & ks]) |
dissoc! | arglists Clojure (JVM): ([map key] [map key & ks])this surface: ([coll k] [coll k & ks]) |
gen-class | :macro Clojure (JVM): true this surface: false |
hash | arglists Clojure (JVM): ([x])this surface: ([o]) |
identical? | arglists Clojure (JVM): ([x y])this surface: ([lhs rhs]) |
import | arglists Clojure (JVM): ([& import-symbols-or-lists])this surface: ([& _]) |
iterate | arglists Clojure (JVM): ([f x])this surface: ([fn x]) |
keys | arglists Clojure (JVM): ([map])this surface: ([m]) |
loop | arglists Clojure (JVM): ([bindings & body])this surface: ([all-bindings & body]) |
max | arglists Clojure (JVM): ([x] [x y] [x y & more])this surface: ([x] [l r] [l r & args]) |
min | arglists Clojure (JVM): ([x] [x y] [x y & more])this surface: ([x] [l r] [l r & args]) |
nil? | arglists Clojure (JVM): ([x])this surface: ([o]) |
ns-map | arglists Clojure (JVM): ([ns])this surface: ([ns-sym]) |
ns-name | arglists Clojure (JVM): ([ns])this surface: ([ns-sym]) |
ns-publics | arglists Clojure (JVM): ([ns])this surface: ([ns-sym]) |
or | arglists Clojure (JVM): ([] [x] [x & next])this surface: ([] [x] [x & more]) |
pr | arglists Clojure (JVM): ([] [x] [x & more])this surface: ([& more]) |
pr-str | arglists Clojure (JVM): ([& xs])this surface: ([x]) |
ratio? | arglists Clojure (JVM): ([n])this surface: ([r]) |
reduce | arglists Clojure (JVM): ([f coll] [f val coll])this surface: ([f coll] [f init coll]) |
select-keys | arglists Clojure (JVM): ([map keyseq])this surface: ([m ks]) |
slurp | arglists Clojure (JVM): ([f & opts])this surface: ([f]) |
sort | arglists Clojure (JVM): ([coll] [comp coll])this surface: ([coll]) |
sorted-map | arglists Clojure (JVM): ([& keyvals])this surface: ([] [& keyvals]) |
sorted-set | arglists Clojure (JVM): ([& keys])this surface: ([] [& keys]) |
the-ns | arglists Clojure (JVM): ([x])this surface: ([ns-or-sym]) |
transduce | arglists Clojure (JVM): ([xform f coll] [xform f init coll])this surface: ([xform rf coll] [xform rf init coll]) |
type | arglists Clojure (JVM): ([x])this surface: ([o]) |
vals | arglists Clojure (JVM): ([map])this surface: ([m]) |
var? | arglists Clojure (JVM): ([v])this surface: ([x]) |
vary-meta | arglists Clojure (JVM): ([obj f & args])this surface: ([o f & args]) |
vswap! | arglists Clojure (JVM): ([vol f & args])this surface: ([vol f] [vol f & args]) |
when | arglists Clojure (JVM): ([test & body])this surface: ([condition & body]) |
when-not | arglists Clojure (JVM): ([test & body])this surface: ([condition & body]) |
with-redefs-fn | arglists Clojure (JVM): ([binding-map func])this surface: ([binding-map fun]) |
Vars Present in Clojure (JVM) but Absent from This Surface (75)
| Var |
|---|
*agent* |
*allow-unresolved-vars* |
*clojure-version* |
*fn-loader* |
*math-context* |
*print-length* |
*print-level* |
*print-namespace-maps* |
*reader-resolver* |
*source-path* |
*suppress-read* |
*use-context-classloader* |
*verbose-defrecords* |
->ArrayChunk |
->Eduction |
->Vec |
->VecNode |
->VecSeq |
-cache-protocol-fn |
-reset-methods |
.. |
EMPTY-NODE |
Inst |
PrintWriter-on |
StackTraceElement->vec |
Throwable->map |
bean |
booleans |
bytes |
char-escape-string |
char-name-string |
chars |
construct-proxy |
default-data-readers |
definterface |
defprotocol |
defrecord |
deftype |
doubles |
eduction |
extend |
extend-protocol |
extend-type |
extenders |
extends? |
find-protocol-impl |
find-protocol-method |
floats |
gen-interface |
get-proxy-class |
halt-when |
hash-combine |
init-proxy |
inst-ms* |
ints |
load-file |
longs |
method-sig |
munge |
namespace-munge |
primitives-classnames |
print-ctor |
print-simple |
proxy |
proxy-call-with-super |
proxy-mappings |
proxy-name |
proxy-super |
record? |
reify |
satisfies? |
shorts |
update-proxy |
uri? |
vector-of |
Vars Present in This Surface but Not in Clojure (JVM) (71)
| Var |
|---|
*loaded-libs* |
*loading-verbosely* |
*pending-paths* |
add-annotation |
add-annotations |
add-doc-and-meta |
apply* |
array |
assert-macro-args |
assert-valid-fdecl |
case-hash |
case-map |
case-map-collison-merged |
case-map-with-check |
check-cyclic-dependency |
check-valid-options |
concat* |
current-time |
def-aset |
defmethod* |
delay* |
deref-future |
descriptor |
elide-top-frames |
filter-key |
fits-table? |
fresh-seq |
global-hierarchy |
i32? |
i64? |
include |
is-annotation? |
is-runtime-annotation? |
lazy-seq* |
libspec? |
load-all |
load-lib |
load-libs |
load-one |
max-mask-bits |
max-switch-table-size |
maybe-destructured |
maybe-min-hash |
merge-hash-collisions |
mk-bound-fn |
multi-fn* |
multi-fn? |
named? |
next-in-place |
parsing-err |
prep-hashes |
prep-ints |
prependss |
preserving-reduced |
print-initialized |
process-annotation |
refer-global |
reverse* |
serialized-require |
setup-reference |
shift-mask |
sigs |
sleep |
spread |
system-newline |
tap-loop |
tapq |
tapset |
throw-if |
transientable? |
when-class |
Documented Intentional Divergences in This Namespace (2)
require resolves at compile time, not runtime
- Since
jank-0.1- Rationale
- An unknown module aborts the script before any try/catch can intercept. Portable code that probes for optional namespaces via try-require must instead use a known-good list per dialect.
*print-namespace-maps* / *print-length* / *print-level* not exposed
- Since
jank-0.1- Rationale
- jank-0.1-alpha does not yet provide the dynvars that control pretty-printing. Code that (binding [*print-length* 10] ...) fails at compile time with unresolved-var. Pending stdlib expansion.