<!-- Auto-generated — do not edit by hand -->
# Clojure Core Audit for PTC-Lisp

> **Warning:** This file is auto-generated by `mix ptc.gen_docs` from `priv/function_audit.exs`.
> Manual edits will be overwritten. Edit `priv/function_audit.exs` instead.

Comparison of `clojure.core` vars against PTC-Lisp builtins.

See also: [Function Reference](../function-reference.md) | [Clojure String Audit](clojure-string-audit.md) | [Clojure Set Audit](clojure-set-audit.md) | [Clojure Walk Audit](clojure-walk-audit.md) | [Java Math Audit](java-math-audit.md)

## Summary

| Status | Count |
|--------|-------|
| Supported | 234 |
| Candidate | 14 |
| Not Relevant | 286 |
| Not Classified | 0 |
| **Total** | **534** |

## Details

| Var | Status | Description | Notes |
|-----|--------|-------------|-------|
| `*` | ✅ supported | Multiplies numbers; returns 1 with no args |  |
| `*'` | ✅ supported | Multiplies numbers with arbitrary precision | alias for *; BEAM integers are already arbitrary precision |
| `+` | ✅ supported | Adds numbers; returns 0 with no args |  |
| `+'` | ✅ supported | Adds numbers with arbitrary precision | alias for +; BEAM integers are already arbitrary precision |
| `-` | ✅ supported | Subtracts numbers or negates single argument |  |
| `-'` | ✅ supported | Subtracts numbers with arbitrary precision | alias for -; BEAM integers are already arbitrary precision |
| `->` | ✅ supported | Threads expression as second argument through forms |  |
| `->>` | ✅ supported | Threads expression as last argument through forms |  |
| `.` | ❌ not_relevant | Java member access and method calls | Java interop |
| `..` | ❌ not_relevant | Chains member access operations | Java interop |
| `/` | ✅ supported | Divides numbers |  |
| `<` | ✅ supported | Returns true if numbers monotonically increase |  |
| `<=` | ✅ supported | Returns true if numbers non-decreasing |  |
| `=` | ✅ supported | Equality comparison |  |
| `==` | ✅ supported | Type-independent numeric equality | alias for numeric equality |
| `>` | ✅ supported | Returns true if numbers monotonically decrease |  |
| `>=` | ✅ supported | Returns true if numbers non-increasing |  |
| `abs` | ✅ supported | Returns absolute value of number |  |
| `accessor` | ❌ not_relevant | Returns function accessing structmap value at key | legacy structmap helper; structmaps are not supported |
| `aclone` | ❌ not_relevant | Returns clone of Java array | Java array manipulation |
| `add-tap` | ❌ not_relevant | Adds function to receive tap> values | I/O and global state side effects |
| `add-watch` | ❌ not_relevant | Adds watch function to reference | mutable state and referencing |
| `agent` | ❌ not_relevant | Creates agent with initial value | concurrency primitive (mutable state) |
| `agent-error` | ❌ not_relevant | Returns exception from failed agent | depends on agent state and exception handling |
| `aget` | ❌ not_relevant | Returns value at Java array index | Java interop (Java array access) |
| `alength` | ❌ not_relevant | Returns length of Java array | Java interop (Java array length) |
| `alias` | ❌ not_relevant | Adds namespace alias | namespace manipulation |
| `all-ns` | ❌ not_relevant | Returns all namespaces | namespace system |
| `alter` | ❌ not_relevant | Sets ref value in transaction | concurrency primitive (ref mutation) |
| `alter-meta!` | ❌ not_relevant | Atomically sets metadata via function | metadata and mutability |
| `alter-var-root` | ❌ not_relevant | Atomically alters var root binding | var root mutation |
| `amap` | ❌ not_relevant | Maps expression across Java array | Java interop (Java array iteration) |
| `ancestors` | ❌ not_relevant | Returns parents of tag via hierarchy | relies on Clojure's global hierarchy/multimethod system |
| `and` | ✅ supported | Short-circuit logical AND |  |
| `any?` | 🔲 candidate | Returns true for any argument | pure predicate function |
| `apply` | ✅ supported | Applies function to argument sequence |  |
| `areduce` | ❌ not_relevant | Reduces expression across Java array | relies on Java array interoperability |
| `array-map` | ✅ supported | Constructs array-map from key-value pairs | alias for hash-map; no separate small-map representation |
| `as->` | ✅ supported | Binds name to expr, threads through forms |  |
| `aset` | ❌ not_relevant | Sets value in Java array at index | performs mutable operations on Java arrays |
| `assert` | ❌ not_relevant | Throws AssertionError if expr false | relies on exception handling/throwing |
| `assoc` | ✅ supported | Returns map/vector with added key-value pairs |  |
| `assoc!` | ❌ not_relevant | Sets value in transient collection | relies on transient collections (mutability) |
| `assoc-in` | ✅ supported | Associates value in nested structure |  |
| `associative?` | ✅ supported | Returns true if coll implements Associative |  |
| `atom` | ❌ not_relevant | Creates atom with initial value | relies on mutable state |
| `await` | ❌ not_relevant | Blocks until agent actions complete | relies on agent state |
| `await-for` | ❌ not_relevant | Blocks with timeout for agent actions | relies on agent state |
| `bases` | ❌ not_relevant | Returns immediate superclass and interfaces | Java interop and class inspection |
| `bean` | ❌ not_relevant | Returns map based on JavaBean properties | Java interop (JavaBeans) |
| `bigdec` | ❌ not_relevant | Coerces to BigDecimal | BEAM runtime has no BigDecimal type in PTC-Lisp |
| `bigint` | ❌ not_relevant | Coerces to BigInt | BEAM integers are already arbitrary precision |
| `biginteger` | ❌ not_relevant | Coerces to BigInteger | JVM-specific BigInteger coercion; BEAM integers are already arbitrary precision |
| `binding` | ❌ not_relevant | Binds vars to new values for body duration | relies on thread-local var binding mechanism |
| `bit-and` | ✅ supported | Bitwise AND | integers only |
| `bit-and-not` | ✅ supported | Bitwise AND with complement | integers only |
| `bit-clear` | ✅ supported | Clears bit at index | integers only |
| `bit-flip` | ✅ supported | Flips bit at index | integers only |
| `bit-not` | ✅ supported | Bitwise complement | integers only |
| `bit-or` | ✅ supported | Bitwise OR | integers only |
| `bit-set` | ✅ supported | Sets bit at index | integers only |
| `bit-shift-left` | ✅ supported | Bitwise left shift | integers only; BEAM has no fixed integer width (shift amount not mod 64) |
| `bit-shift-right` | ✅ supported | Bitwise right shift | integers only; arithmetic (sign-extending) shift |
| `bit-test` | ✅ supported | Tests bit at index | integers only |
| `bit-xor` | ✅ supported | Bitwise exclusive OR | integers only |
| `boolean` | ✅ supported | Coerces to boolean |  |
| `boolean-array` | ❌ not_relevant | Creates boolean Java array | creates Java array, incompatible with BEAM/non-JVM environments |
| `boolean?` | ✅ supported | Returns true if value is Boolean |  |
| `booleans` | ❌ not_relevant | Casts to boolean array | Java array manipulation |
| `bound-fn` | ❌ not_relevant | Returns function with call-site bindings | relies on thread-local/dynamic scope bindings |
| `bound-fn*` | ❌ not_relevant | Returns function applying creation-context bindings | relies on thread-local/dynamic scope bindings |
| `bound?` | ❌ not_relevant | Returns true if all vars have bound value | relies on dynamic var binding state |
| `bounded-count` | ❌ not_relevant | Counts up to n elements | designed for lazy sequences |
| `butlast` | ✅ supported | Returns all but last item |  |
| `byte` | ❌ not_relevant | Coerces to byte | JVM primitive width coercion |
| `byte-array` | ❌ not_relevant | Creates byte Java array | Java array creation |
| `bytes` | ❌ not_relevant | Casts to byte array | Java array casting |
| `bytes?` | ❌ not_relevant | Returns true if value is byte array | Java array type check |
| `case` | ✅ supported | Constant-time dispatch on expression value |  |
| `cast` | ❌ not_relevant | Throws ClassCastException if not instance | relies on Java type system and exception handling |
| `cat` | ❌ not_relevant | Transducer concatenating input collections | transducers are not supported |
| `char` | ❌ not_relevant | Coerces to char | JVM character coercion; PTC-Lisp strings are UTF-8 binaries |
| `char-array` | ❌ not_relevant | Creates char Java array | creates Java array |
| `char?` | ✅ supported | Returns true if value is Character |  |
| `chars` | ❌ not_relevant | Casts to char array | relies on Java char array types |
| `class` | ❌ not_relevant | Returns class of value | relies on Java class introspection |
| `class?` | ❌ not_relevant | Returns true if value is Class instance | relies on Java type system |
| `clojure-version` | ❌ not_relevant | Returns Clojure version string | environment info irrelevant to pure data transformation |
| `coll?` | ✅ supported | Returns true if implements IPersistentCollection |  |
| `comment` | ❌ not_relevant | Ignores body, yields nil | REPL/source code construct |
| `commute` | ❌ not_relevant | Sets ref value via commutative function | mutable state primitive (refs) |
| `comp` | ✅ supported | Composes functions right-to-left |  |
| `comparator` | 🔲 candidate | Returns Comparator from predicate | pure function to create a comparison function |
| `compare` | ✅ supported | Compares values returning neg/zero/pos |  |
| `compare-and-set!` | ❌ not_relevant | Atomically sets atom if current equals old | operates on mutable state (atoms) |
| `compile` | ❌ not_relevant | Compiles namespace into classfiles | compilation and class generation |
| `complement` | ✅ supported | Returns function with opposite truth value |  |
| `completing` | 🔲 candidate | Returns reducing function with completion | pure function for reducing transformations |
| `concat` | ✅ supported | Returns lazy seq concatenating collections |  |
| `cond` | ✅ supported | Multi-way conditional |  |
| `cond->` | ✅ supported | Threads through forms where tests true |  |
| `cond->>` | ✅ supported | Threads as last arg where tests true |  |
| `condp` | ✅ supported | Predicate dispatch against expression |  |
| `conj` | ✅ supported | Returns collection with items added |  |
| `conj!` | ❌ not_relevant | Adds item to transient collection | operates on transient collections (mutable) |
| `cons` | ✅ supported | Returns seq with item prepended |  |
| `constantly` | ✅ supported | Returns function ignoring args, returning value |  |
| `contains?` | ✅ supported | Returns true if key present in collection |  |
| `count` | ✅ supported | Returns number of items in collection |  |
| `counted?` | ✅ supported | Returns true if constant-time count |  |
| `create-ns` | ❌ not_relevant | Creates or returns namespace | requires namespace system |
| `create-struct` | ❌ not_relevant | Returns structure basis object | relies on legacy fixed-key structure system |
| `cycle` | ❌ not_relevant | Returns infinite lazy seq repeating collection | relies on lazy sequences |
| `dec` | ✅ supported | Returns number minus one |  |
| `dec'` | ✅ supported | Decrements with arbitrary precision | alias for dec; BEAM integers are already arbitrary precision |
| `decimal?` | ✅ supported | Returns true if BigDecimal |  |
| `declare` | ❌ not_relevant | Defines var names with no bindings | relies on namespace/var system |
| `dedupe` | ✅ supported | Removes consecutive duplicates |  |
| `def` | ✅ supported | Creates and interns global var |  |
| `definterface` | ❌ not_relevant | Creates Java interface | Java interop |
| `defmacro` | ❌ not_relevant | Defines macro | macro system |
| `defmethod` | ❌ not_relevant | Creates multimethod implementation | multimethods |
| `defmulti` | ❌ not_relevant | Creates multimethod with dispatch function | multimethods |
| `defn` | ✅ supported | Defines named function |  |
| `defn-` | ❌ not_relevant | Defines private function | namespacing/metadata |
| `defonce` | ✅ supported | Defines var only if not already defined |  |
| `defprotocol` | ❌ not_relevant | Creates protocol with method signatures | protocols |
| `defrecord` | ❌ not_relevant | Creates record type with fields | custom types/Java-like classes |
| `defstruct` | ❌ not_relevant | Creates structure type | obsolete type system |
| `deftype` | ❌ not_relevant | Creates custom type with fields | custom types/Java interop |
| `delay` | ❌ not_relevant | Defers expression evaluation | lazy evaluation/stateful caching |
| `delay?` | ❌ not_relevant | Returns true if value is delay | relies on delay/concurrency which is not supported |
| `deliver` | ❌ not_relevant | Delivers result to promise | relies on promise/mutable state |
| `denominator` | ❌ not_relevant | Returns denominator of ratio | ratio values are not supported |
| `deref` | ❌ not_relevant | Dereferences ref/delay/future/promise | relies on mutable state/concurrency types |
| `derive` | ❌ not_relevant | Establishes hierarchical relationship | relies on global namespace/hierarchy state |
| `descendants` | ❌ not_relevant | Returns all descendants of tag | relies on global namespace/hierarchy state |
| `disj` | ✅ supported | Returns set with item removed |  |
| `disj!` | ❌ not_relevant | Removes from transient set | relies on transient/mutable data structures |
| `dissoc` | ✅ supported | Returns map with key removed |  |
| `dissoc!` | ❌ not_relevant | Removes from transient map | relies on transient/mutable data structures |
| `distinct` | ✅ supported | Returns seq removing duplicates |  |
| `distinct?` | ✅ supported | Returns true if all args distinct |  |
| `do` | ✅ supported | Evaluates expressions, returns last |  |
| `doall` | ❌ not_relevant | Realizes entire lazy seq | relies on lazy sequences |
| `dorun` | ❌ not_relevant | Realizes lazy seq, returns nil | relies on lazy sequences |
| `doseq` | ✅ supported | Iterates over sequences for side effects |  |
| `dosync` | ❌ not_relevant | Executes body in STM transaction | relies on concurrency/STM primitives |
| `dotimes` | ❌ not_relevant | Executes body n times with counter | relies on side-effecting loops |
| `doto` | ❌ not_relevant | Calls methods on object, returns object | relies on Java interop |
| `double` | ✅ supported | Coerces to double |  |
| `double-array` | ❌ not_relevant | Creates double Java array | relies on Java arrays |
| `double?` | ✅ supported | Returns true if Double |  |
| `doubles` | ❌ not_relevant | Casts to double array | relies on Java arrays |
| `drop` | ✅ supported | Returns seq skipping first n items |  |
| `drop-last` | ✅ supported | Returns seq without last n items |  |
| `drop-while` | ✅ supported | Drops items while predicate true |  |
| `eduction` | ❌ not_relevant | Returns reducible wrapper of transducer | relies on lazy/transducer abstractions |
| `empty` | ✅ supported | Returns empty collection of same type |  |
| `empty?` | ✅ supported | Returns true if collection empty |  |
| `ensure` | ❌ not_relevant | Ensures ref not written by other transaction | relies on software transactional memory (ref/transactional state) |
| `ensure-reduced` | 🔲 candidate | Wraps in reduced if not already | pure utility for reduction flow control |
| `enumeration-seq` | ❌ not_relevant | Lazy seq from Java Enumeration | relies on lazy sequences and Java interop |
| `error-handler` | ❌ not_relevant | Returns agent error handler | relies on agent state |
| `error-mode` | ❌ not_relevant | Returns agent error mode | relies on agent state |
| `eval` | ❌ not_relevant | Evaluates form in current namespace | requires runtime compilation and namespace support |
| `even?` | ✅ supported | Returns true if number is even |  |
| `every-pred` | ✅ supported | Returns combined predicate (all must be true) |  |
| `every?` | ✅ supported | Returns true if pred true for all items |  |
| `ex-cause` | ❌ not_relevant | Returns cause of exception | relies on exception handling |
| `ex-data` | ❌ not_relevant | Returns data map of exception | relies on exception handling |
| `ex-info` | ❌ not_relevant | Creates exception with message and data | relies on exception handling |
| `ex-message` | ❌ not_relevant | Returns exception message string | relies on exception handling |
| `extend` | ❌ not_relevant | Adds protocol implementations for type | relies on protocols |
| `extend-protocol` | ❌ not_relevant | Extends protocol to types | relies on protocols |
| `extend-type` | ❌ not_relevant | Extends type to implement protocol | relies on protocols |
| `extenders` | ❌ not_relevant | Returns types extending protocol | relies on protocols |
| `extends?` | ❌ not_relevant | Returns true if type extends protocol | relies on protocols |
| `false?` | ✅ supported | Returns true if value is false |  |
| `ffirst` | ✅ supported | First of first item |  |
| `file-seq` | ❌ not_relevant | Lazy seq of files in directory tree | relies on lazy sequences and file I/O |
| `filter` | ✅ supported | Returns items where predicate true |  |
| `filterv` | ✅ supported | Returns vector of items where pred true |  |
| `find` | ✅ supported | Returns map entry for key or nil |  |
| `find-keyword` | ❌ not_relevant | Returns keyword with ns and name | relies on namespaces |
| `find-ns` | ❌ not_relevant | Returns namespace or nil | relies on namespace system |
| `find-var` | ❌ not_relevant | Returns var or nil | relies on vars/namespace system |
| `first` | ✅ supported | Returns first item |  |
| `flatten` | ✅ supported | Flattens nested collections |  |
| `float` | ✅ supported | Coerces to float |  |
| `float-array` | ❌ not_relevant | Creates float Java array | creates Java array |
| `float?` | ✅ supported | Returns true if Float |  |
| `floats` | ❌ not_relevant | Casts to float array | handles Java arrays |
| `flush` | ❌ not_relevant | Flushes output writer | I/O operation |
| `fn` | ✅ supported | Defines anonymous function |  |
| `fn?` | ✅ supported | Returns true if value is function |  |
| `fnext` | ✅ supported | First of next item |  |
| `fnil` | ✅ supported | Returns function with nil defaults |  |
| `for` | ✅ supported | List comprehension from nested iteration |  |
| `force` | ❌ not_relevant | Forces evaluation of delay | relies on lazy evaluation/delays |
| `format` | ✅ supported | Returns formatted string |  |
| `frequencies` | ✅ supported | Returns map of item frequencies |  |
| `future` | ❌ not_relevant | Async computation | concurrency primitive |
| `future-call` | ❌ not_relevant | Calls function asynchronously | concurrency primitive |
| `future-cancel` | ❌ not_relevant | Cancels future | concurrency primitive |
| `future-cancelled?` | ❌ not_relevant | Returns true if future cancelled | concurrency primitive |
| `future-done?` | ❌ not_relevant | Returns true if future complete | concurrency primitive |
| `future?` | ❌ not_relevant | Returns true if value is future | concurrency primitive |
| `gensym` | ❌ not_relevant | Returns unique symbol | macro system utility |
| `get` | ✅ supported | Returns value for key or nil |  |
| `get-in` | ✅ supported | Returns value at nested key path |  |
| `get-method` | ❌ not_relevant | Returns multimethod implementation | multimethods not supported |
| `get-proxy-class` | ❌ not_relevant | Returns proxy class | Java interop |
| `get-thread-bindings` | ❌ not_relevant | Returns thread-local bindings | concurrency primitive / thread locals |
| `get-validator` | ❌ not_relevant | Returns reference validator | mutable state validator |
| `group-by` | ✅ supported | Groups items by function result |  |
| `halt-when` | ❌ not_relevant | Transducer halting on predicate | relies on transducers which often involve stateful reduction and lazy-like sequence processing |
| `hash` | ❌ not_relevant | Returns hash code | runtime-specific hash values are not stable across hosts |
| `hash-map` | ✅ supported | Creates hash map from pairs |  |
| `hash-ordered-coll` | ❌ not_relevant | Returns hash of ordered collection | Clojure hashing internals; not stable across PTC-Lisp hosts |
| `hash-set` | ✅ supported | Creates hash set from items | constructs a PTC-Lisp set from variadic arguments |
| `hash-unordered-coll` | ❌ not_relevant | Returns hash of unordered collection | Clojure hashing internals; not stable across PTC-Lisp hosts |
| `ident?` | ❌ not_relevant | Returns true if keyword or symbol | PTC-Lisp has keywords but no first-class symbol or namespaced identifier values |
| `identical?` | ❌ not_relevant | Returns true if same object | relies on object identity which is not meaningful for serializable data in a BEAM-based environment |
| `identity` | ✅ supported | Returns argument unchanged |  |
| `if` | ✅ supported | Conditional branch |  |
| `if-let` | ✅ supported | Conditional with binding |  |
| `if-not` | ✅ supported | Negated conditional |  |
| `if-some` | ✅ supported | Binds if not nil |  |
| `ifn?` | ✅ supported | Returns true if invokable |  |
| `import` | ❌ not_relevant | Imports Java classes | relies on Java interop |
| `in-ns` | ❌ not_relevant | Changes current namespace | relies on namespace support |
| `inc` | ✅ supported | Returns number plus one |  |
| `inc'` | ✅ supported | Increments with arbitrary precision | alias for inc; BEAM integers are already arbitrary precision |
| `indexed?` | ✅ supported | Returns true if supports indexed access |  |
| `infinite?` | ✅ supported | Returns true if number infinite |  |
| `inst-ms` | ❌ not_relevant | Milliseconds since epoch for instant | covered by existing temporal interop .getTime |
| `inst?` | ❌ not_relevant | Returns true if instant | Clojure instant predicate; PTC-Lisp temporal interop uses host date structs |
| `instance?` | ❌ not_relevant | Returns true if instance of class | relies on Java class system |
| `int` | ✅ supported | Coerces to int |  |
| `int-array` | ❌ not_relevant | Creates int Java array | relies on Java array/mutability |
| `int?` | ✅ supported | Returns true if Integer |  |
| `integer?` | ✅ supported | Returns true if integer |  |
| `interleave` | ✅ supported | Interleaves items from collections |  |
| `intern` | ❌ not_relevant | Creates or returns var in namespace | operates on namespaces |
| `interpose` | ✅ supported | Inserts separator between items |  |
| `into` | ✅ supported | Conjoins items from source into target |  |
| `into-array` | ❌ not_relevant | Creates Java array from items | Java interop |
| `ints` | ❌ not_relevant | Casts to int array | Java interop |
| `isa?` | ❌ not_relevant | Returns true if child is parent instance | relies on hierarchy/multimethods system |
| `iterate` | ❌ not_relevant | Lazy seq of repeated function application | creates lazy sequences |
| `iteration` | ❌ not_relevant | Reducible wrapper of iterator | wraps Java iterators |
| `iterator-seq` | ❌ not_relevant | Lazy seq from Java Iterator | creates lazy sequences from Java iterators |
| `juxt` | ✅ supported | Applies multiple functions, collects results |  |
| `keep` | ✅ supported | Keeps non-nil results of function |  |
| `keep-indexed` | ✅ supported | Keeps non-nil results with index |  |
| `key` | ✅ supported | Returns key of map entry |  |
| `keys` | ✅ supported | Returns map keys |  |
| `keyword` | ✅ supported | Coerces to keyword |  |
| `keyword?` | ✅ supported | Returns true if keyword |  |
| `last` | ✅ supported | Returns last item |  |
| `lazy-cat` | ❌ not_relevant | Lazy concatenation of expressions | relies on lazy sequences |
| `lazy-seq` | ❌ not_relevant | Creates lazy sequence from expression | relies on lazy sequences |
| `let` | ✅ supported | Local variable bindings |  |
| `letfn` | ❌ not_relevant | Binds function names for mutual recursion | mutual recursion binding form is outside PTC-Lisp's small evaluator surface |
| `line-seq` | ❌ not_relevant | Lazy seq of lines from reader | relies on lazy sequences and reader I/O |
| `list` | ✅ supported | Alias for vector (PTC-Lisp is vector-first) | implemented as alias for vector |
| `list*` | ❌ not_relevant | Creates list with seq appended | PTC-Lisp is vector-first and has no separate list runtime type |
| `list?` | ❌ not_relevant | Returns true if list | PTC-Lisp is vector-first and has no separate list runtime type |
| `load` | ❌ not_relevant | Loads Clojure file from classpath | relies on file I/O and classpath |
| `load-file` | ❌ not_relevant | Loads Clojure file from path | relies on file I/O |
| `load-reader` | ❌ not_relevant | Loads code from reader | relies on reader I/O |
| `load-string` | ❌ not_relevant | Loads code from string | evaluates code/REPL feature |
| `locking` | ❌ not_relevant | Acquires monitor lock, executes body | concurrency primitive/locking |
| `long` | ❌ not_relevant | Coerces to long | JVM primitive width coercion; use int for integer coercion |
| `long-array` | ❌ not_relevant | Creates long Java array | Java interop/primitive array |
| `longs` | ❌ not_relevant | Casts to long array | Java interop/primitive array |
| `loop` | ✅ supported | Loop with recur for tail recursion |  |
| `macroexpand` | ❌ not_relevant | Recursively expands macro | macro system |
| `macroexpand-1` | ❌ not_relevant | Expands macro one level | macro system |
| `make-array` | ❌ not_relevant | Creates Java array | Java interop/array creation |
| `make-hierarchy` | ❌ not_relevant | Returns empty hierarchy | relies on multimethods system |
| `map` | ✅ supported | Applies function to each item |  |
| `map-entry?` | ✅ supported | Returns true if map entry |  |
| `map-indexed` | ✅ supported | Applies function with index to items |  |
| `map?` | ✅ supported | Returns true if map |  |
| `mapcat` | ✅ supported | Maps then concatenates results |  |
| `mapv` | ✅ supported | Returns vector from mapping function |  |
| `max` | ✅ supported | Returns greatest number |  |
| `max-key` | ✅ supported | Returns item with greatest function value |  |
| `memfn` | ❌ not_relevant | Returns function calling Java method | relies on Java interop |
| `memoize` | ❌ not_relevant | Caches function results by arguments | relies on mutable state for caching |
| `merge` | ✅ supported | Merges maps |  |
| `merge-with` | ✅ supported | Merges maps with combining function |  |
| `meta` | ❌ not_relevant | Returns metadata | relies on metadata support |
| `methods` | ❌ not_relevant | Returns multimethod implementations | relies on multimethods |
| `min` | ✅ supported | Returns least number |  |
| `min-key` | ✅ supported | Returns item with least function value |  |
| `mod` | ✅ supported | Returns modulo |  |
| `name` | ✅ supported | Returns name string of symbol/keyword |  |
| `namespace` | ❌ not_relevant | Returns namespace of symbol/keyword | relies on namespace support |
| `nat-int?` | ✅ supported | Returns true if non-negative integer |  |
| `neg-int?` | ✅ supported | Returns true if negative integer |  |
| `neg?` | ✅ supported | Returns true if number negative |  |
| `newline` | ❌ not_relevant | Writes newline to output | relies on I/O |
| `next` | ✅ supported | Returns seq after first item |  |
| `nfirst` | ✅ supported | Next of first item |  |
| `nil?` | ✅ supported | Returns true if nil |  |
| `nnext` | ✅ supported | Next of next item |  |
| `not` | ✅ supported | Logical complement |  |
| `not-any?` | ✅ supported | Returns true if pred false for all |  |
| `not-empty` | ✅ supported | Returns collection or nil if empty |  |
| `not-every?` | ✅ supported | Returns true if pred false for some |  |
| `not=` | ✅ supported | Returns true if not equal |  |
| `nth` | ✅ supported | Returns item at index |  |
| `nthnext` | ✅ supported | Returns nth next | implemented as seq after nthrest |
| `nthrest` | ✅ supported | Returns rest after nth item | implemented as drop alias with Clojure argument order |
| `num` | ❌ not_relevant | Coerces to number | JVM Number coercion; parse-long/parse-double cover string parsing |
| `number?` | ✅ supported | Returns true if number |  |
| `numerator` | ❌ not_relevant | Returns numerator of ratio | ratio values are not supported |
| `object-array` | ❌ not_relevant | Creates object Java array | relies on Java interop and host arrays |
| `odd?` | ✅ supported | Returns true if number odd |  |
| `or` | ✅ supported | Short-circuit logical OR |  |
| `parents` | ❌ not_relevant | Returns immediate parents of tag | metadata/hierarchy manipulation not supported in PTC-Lisp |
| `parse-boolean` | ✅ supported | Parses string to boolean | returns true, false, or nil |
| `parse-double` | ✅ supported | Parses string to double |  |
| `parse-long` | ✅ supported | Parses string to long |  |
| `parse-uuid` | ❌ not_relevant | Parses string to UUID | no UUID runtime type; keep UUIDs as strings |
| `partial` | ✅ supported | Fixes supplied arguments to function |  |
| `partition` | ✅ supported | Partitions items into groups of n |  |
| `partition-all` | ✅ supported | Partitions without dropping partial group |  |
| `partition-by` | ✅ supported | Partitions by change in function value |  |
| `pcalls` | ✅ supported | Parallel calls to zero-arity functions |  |
| `peek` | ✅ supported | Returns first/last without removing |  |
| `persistent!` | ❌ not_relevant | Converts transient to persistent | transients are unsupported |
| `pmap` | ✅ supported | Parallel map over collection |  |
| `pop` | ✅ supported | Returns collection without first/last |  |
| `pop!` | ❌ not_relevant | Removes from transient collection | transients are unsupported |
| `pos-int?` | ✅ supported | Returns true if positive integer |  |
| `pos?` | ✅ supported | Returns true if number positive |  |
| `pr` | ❌ not_relevant | Prints value in readable form | I/O operation |
| `pr-str` | ✅ supported | Returns readable string of value |  |
| `prefer-method` | ❌ not_relevant | Prefers multimethod implementation | multimethods are unsupported |
| `prefers` | ❌ not_relevant | Returns multimethod preferences | multimethods are unsupported |
| `print` | ❌ not_relevant | Prints value without quoting | I/O operation |
| `print-str` | ❌ not_relevant | Returns printed string of value | relies on printing logic/I/O |
| `printf` | ❌ not_relevant | Prints formatted output | performs stdout I/O |
| `println` | ✅ supported | Prints with newline |  |
| `promise` | ❌ not_relevant | Creates promise | concurrency primitive |
| `proxy` | ❌ not_relevant | Creates proxy implementing interfaces | Java interop |
| `push-thread-bindings` | ❌ not_relevant | Installs thread-local bindings | thread-local mutability/state |
| `qualified-ident?` | ❌ not_relevant | Returns true if ident has namespace | namespaced identifiers are not supported as runtime values |
| `qualified-keyword?` | ❌ not_relevant | Returns true if keyword has namespace | namespaced keywords are not supported |
| `qualified-symbol?` | ❌ not_relevant | Returns true if symbol has namespace | symbols are not supported as runtime values |
| `quot` | ✅ supported | Returns integer division quotient |  |
| `quote` | ❌ not_relevant | Returns form unevaluated | quote syntax is intentionally unsupported; use vectors and data literals directly |
| `rand` | ❌ not_relevant | Returns random float 0-1 | non-deterministic randomness contradicts sandbox determinism |
| `rand-int` | ❌ not_relevant | Returns random int less than arg | relies on non-deterministic side effects/state |
| `rand-nth` | ❌ not_relevant | Returns random item from seq | relies on non-deterministic side effects/state |
| `random-sample` | ❌ not_relevant | Returns random sample of items | relies on non-deterministic side effects/state |
| `random-uuid` | ❌ not_relevant | Returns random UUID | relies on non-deterministic side effects |
| `range` | ✅ supported | Returns sequence of numbers |  |
| `ratio?` | ✅ supported | Returns true if ratio |  |
| `rational?` | ✅ supported | Returns true if rational number |  |
| `rationalize` | ❌ not_relevant | Coerces to ratio | ratio values are not supported |
| `re-find` | ✅ supported | Returns first regex match |  |
| `re-groups` | ❌ not_relevant | Returns regex match groups | capture groups are returned directly by re-find, re-matches, and re-seq |
| `re-matcher` | ❌ not_relevant | Returns matcher for pattern | returns an object maintaining mutable state/matcher position |
| `re-matches` | ✅ supported | Returns full regex match or nil |  |
| `re-pattern` | ✅ supported | Returns compiled regex pattern |  |
| `re-seq` | ✅ supported | Returns seq of regex matches |  |
| `read` | ❌ not_relevant | Reads next form from reader | implies I/O and interaction with reader contexts |
| `read-line` | ❌ not_relevant | Reads line from input | I/O operation |
| `read-string` | ❌ not_relevant | Reads form from string | invokes reader/eval capabilities not supported in sandbox |
| `realized?` | ❌ not_relevant | Returns true if delay/future complete | relies on concurrency/lazy primitives not supported |
| `record?` | ❌ not_relevant | Returns true if record | relies on class/type system not supported |
| `recur` | ✅ supported | Rebinds loop vars and jumps to loop start |  |
| `reduce` | ✅ supported | Reduces collection with function |  |
| `reduce-kv` | ✅ supported | Reduces map with key-value function |  |
| `reduced` | 🔲 candidate | Wraps value indicating reduction complete | pure control flow mechanism for reduction interruption |
| `reduced?` | 🔲 candidate | Returns true if wrapped in reduced | pure predicate for checking reduction status |
| `reductions` | ❌ not_relevant | Returns intermediate reduction results | returns a lazy sequence |
| `ref` | ❌ not_relevant | Creates STM reference | mutable state/concurrency primitive |
| `ref-set` | ❌ not_relevant | Sets ref value in transaction | mutable state/concurrency primitive |
| `reify` | ❌ not_relevant | Creates instance implementing protocols | relies on protocols and class generation |
| `rem` | ✅ supported | Returns remainder of division |  |
| `remove` | ✅ supported | Returns items where predicate false |  |
| `remove-all-methods` | ❌ not_relevant | Removes all multimethod impls | relies on multimethods |
| `remove-method` | ❌ not_relevant | Removes multimethod impl | relies on multimethods |
| `remove-ns` | ❌ not_relevant | Removes namespace | relies on namespaces |
| `remove-tap` | ❌ not_relevant | Removes function from tap set | relies on global mutable state/taps |
| `remove-watch` | ❌ not_relevant | Removes watch from reference | relies on mutable state references |
| `repeat` | ❌ not_relevant | Returns infinite seq repeating value | returns lazy sequences |
| `repeatedly` | ❌ not_relevant | Returns seq calling function repeatedly | returns lazy sequences |
| `replace` | ✅ supported | Replaces values by map mapping |  |
| `require` | ❌ not_relevant | Requires namespace | relies on namespace/load system |
| `requiring-resolve` | ❌ not_relevant | Requires ns and resolves symbol | relies on namespace/load system |
| `reset!` | ❌ not_relevant | Sets atom value | mutable state (atoms) |
| `reset-meta!` | ❌ not_relevant | Sets metadata | metadata manipulation |
| `reset-vals!` | ❌ not_relevant | Sets atom, returns [old new] | mutable state (atoms) |
| `resolve` | ❌ not_relevant | Resolves symbol in namespace | namespace/symbol resolution |
| `rest` | ✅ supported | Returns seq after first item |  |
| `restart-agent` | ❌ not_relevant | Restarts failed agent | concurrency primitives (agents) |
| `reverse` | ✅ supported | Reverses order of items |  |
| `reversible?` | ✅ supported | Returns true if collection reversible |  |
| `rseq` | ❌ not_relevant | Returns reverse seq of sorted collection | relies on lazy/sorted sequence implementation details |
| `rsubseq` | ❌ not_relevant | Returns reverse subseq of sorted coll | relies on lazy/sorted sequence implementation details |
| `run!` | ❌ not_relevant | Runs side effects, returns nil | relies on side effects |
| `satisfies?` | ❌ not_relevant | Returns true if type satisfies protocol | protocol/type system feature |
| `second` | ✅ supported | Returns second item |  |
| `select-keys` | ✅ supported | Returns map with only specified keys |  |
| `send` | ❌ not_relevant | Dispatches action to agent | relies on agent mutable state |
| `send-off` | ❌ not_relevant | Dispatches blocking action to agent | relies on agent mutable state |
| `send-via` | ❌ not_relevant | Sends action via executor to agent | relies on agent mutable state |
| `seq` | ✅ supported | Returns sequence or nil if empty |  |
| `seq?` | ✅ supported | Returns true if value is sequence |  |
| `seqable?` | ✅ supported | Returns true if implements Seqable |  |
| `sequence` | ❌ not_relevant | Returns seq applying transducer | relies on lazy sequences |
| `sequential?` | ✅ supported | Returns true if sequential |  |
| `set` | ✅ supported | Creates set from items |  |
| `set!` | ❌ not_relevant | Sets thread-local var value | relies on mutable state |
| `set?` | ✅ supported | Returns true if set |  |
| `short` | ❌ not_relevant | Coerces to short | JVM primitive width coercion |
| `short-array` | ❌ not_relevant | Creates short Java array | relies on Java array instantiation |
| `shorts` | ❌ not_relevant | Casts to short array | relies on Java array interaction |
| `shuffle` | ❌ not_relevant | Returns items in random order | relies on non-deterministic side effects (randomness) |
| `shutdown-agents` | ❌ not_relevant | Shuts down agent thread pool | manages thread pools which is unsupported |
| `simple-ident?` | ❌ not_relevant | Returns true if ident has no namespace | PTC-Lisp has keywords but no first-class symbol or namespaced identifier values |
| `simple-keyword?` | ❌ not_relevant | Returns true if keyword has no ns | namespaced keywords are not supported |
| `simple-symbol?` | ❌ not_relevant | Returns true if symbol has no ns | symbols are not supported as runtime values |
| `slurp` | ❌ not_relevant | Reads entire contents of file/URL | involves file/network I/O |
| `some` | ✅ supported | Returns first truthy result or nil |  |
| `some->` | ✅ supported | Threads through forms while non-nil |  |
| `some->>` | ✅ supported | Threads as last arg while non-nil |  |
| `some-fn` | ✅ supported | Returns pred true if any fn truthy |  |
| `some?` | ✅ supported | Returns true if not nil |  |
| `sort` | ✅ supported | Returns sorted sequence |  |
| `sort-by` | ✅ supported | Returns seq sorted by function result |  |
| `sorted-map` | 🔲 candidate | Creates sorted map from pairs | pure collection construction |
| `sorted-map-by` | 🔲 candidate | Creates sorted map with comparator | pure collection construction with custom comparator |
| `sorted-set` | 🔲 candidate | Creates sorted set from items | pure collection construction |
| `sorted-set-by` | 🔲 candidate | Creates sorted set with comparator | pure collection construction with custom comparator |
| `sorted?` | ✅ supported | Returns true if collection sorted |  |
| `spit` | ❌ not_relevant | Writes content to file | file I/O |
| `split-at` | ✅ supported | Splits seq at index |  |
| `split-with` | ✅ supported | Splits seq by predicate |  |
| `str` | ✅ supported | Converts to string |  |
| `string?` | ✅ supported | Returns true if string |  |
| `struct` | ❌ not_relevant | Creates structure instance | legacy structure system, discouraged/deprecated |
| `struct-map` | ❌ not_relevant | Creates structure map from basis | legacy structure system, discouraged/deprecated |
| `subs` | ✅ supported | Returns substring |  |
| `subseq` | 🔲 candidate | Returns subseq of sorted collection | pure operation on sorted collections |
| `subvec` | ✅ supported | Returns subvector |  |
| `supers` | ❌ not_relevant | Returns all ancestors of class | relies on Java class hierarchy/interop |
| `swap!` | ❌ not_relevant | Updates atom with function | requires mutable state (atom) |
| `swap-vals!` | ❌ not_relevant | Updates atom, returns [old new] | requires mutable state (atom) |
| `symbol` | 🔲 candidate | Coerces to symbol | pure data coercion |
| `symbol?` | ✅ supported | Returns true if symbol |  |
| `take` | ✅ supported | Returns first n items |  |
| `take-last` | ✅ supported | Returns last n items |  |
| `take-nth` | ❌ not_relevant | Returns every nth item | returns a lazy sequence |
| `take-while` | ✅ supported | Takes items while predicate true |  |
| `tap>` | ❌ not_relevant | Sends value to taps | side-effecting I/O mechanism |
| `test` | ❌ not_relevant | Runs tests for namespace | built-in testing framework/REPL tool |
| `throw` | ❌ not_relevant | Throws exception | exception handling |
| `time` | ❌ not_relevant | Evaluates and prints elapsed time | side-effecting I/O and timing |
| `to-array` | ❌ not_relevant | Converts to object array | Java interop for array creation |
| `to-array-2d` | ❌ not_relevant | Converts to 2D array | Java interop for array creation |
| `trampoline` | ❌ not_relevant | Mutual recursion without stack overflow | lazy/mutual-recursion utility outside PTC-Lisp's small evaluator surface |
| `transduce` | 🔲 candidate | Reduces with transducer | Pure data transformation utility |
| `transient` | ❌ not_relevant | Creates transient collection | Mutable state/transients are not supported |
| `tree-seq` | ✅ supported | Depth-first seq from root |  |
| `true?` | ✅ supported | Returns true if value is true |  |
| `try` | ❌ not_relevant | Exception handling | Exception handling is not supported |
| `type` | ✅ supported | Returns type of value |  |
| `unchecked-add` | ❌ not_relevant | Adds without overflow check | Java-specific math optimization |
| `unchecked-add-int` | ❌ not_relevant | Adds ints without overflow check | Java-specific math optimization |
| `unchecked-byte` | ❌ not_relevant | Casts to byte without check | Java-specific primitive casting |
| `unchecked-char` | ❌ not_relevant | Casts to char without check | Relies on Java primitive casting/low-level JVM semantics |
| `unchecked-dec` | ❌ not_relevant | Decrements without overflow check | Relies on Java primitive casting/low-level JVM semantics |
| `unchecked-dec-int` | ❌ not_relevant | Decrements int without check | Relies on Java primitive casting/low-level JVM semantics |
| `unchecked-divide-int` | ❌ not_relevant | Divides ints without check | Relies on Java primitive casting/low-level JVM semantics |
| `unchecked-double` | ❌ not_relevant | Casts to double without check | Relies on Java primitive casting/low-level JVM semantics |
| `unchecked-float` | ❌ not_relevant | Casts to float without check | Relies on Java primitive casting/low-level JVM semantics |
| `unchecked-inc` | ❌ not_relevant | Increments without overflow check | Relies on Java primitive casting/low-level JVM semantics |
| `unchecked-inc-int` | ❌ not_relevant | Increments int without check | Relies on Java primitive casting/low-level JVM semantics |
| `unchecked-int` | ❌ not_relevant | Casts to int without check | Relies on Java primitive casting/low-level JVM semantics |
| `unchecked-long` | ❌ not_relevant | Casts to long without check | Relies on Java primitive casting/low-level JVM semantics |
| `unchecked-multiply` | ❌ not_relevant | Multiplies without overflow check | relies on JVM-specific primitive behavior/overflow semantics |
| `unchecked-multiply-int` | ❌ not_relevant | Multiplies ints without check | relies on JVM-specific primitive behavior/overflow semantics |
| `unchecked-negate` | ❌ not_relevant | Negates without overflow check | relies on JVM-specific primitive behavior/overflow semantics |
| `unchecked-negate-int` | ❌ not_relevant | Negates int without check | relies on JVM-specific primitive behavior/overflow semantics |
| `unchecked-remainder-int` | ❌ not_relevant | Remainder without check | relies on JVM-specific primitive behavior/overflow semantics |
| `unchecked-short` | ❌ not_relevant | Casts to short without check | relies on Java type casting/interop |
| `unchecked-subtract` | ❌ not_relevant | Subtracts without overflow check | relies on JVM-specific primitive behavior/overflow semantics |
| `unchecked-subtract-int` | ❌ not_relevant | Subtracts ints without check | relies on JVM-specific primitive behavior/overflow semantics |
| `underive` | ❌ not_relevant | Removes hierarchical relationship | requires global hierarchy/multimethod infrastructure |
| `unreduced` | 🔲 candidate | Unwraps from reduced | pure transformation used for handling reduced values in reductions |
| `unsigned-bit-shift-right` | ❌ not_relevant | Unsigned right shift | no defined meaning on BEAM — integers are arbitrary-precision two's-complement with no fixed width to zero-fill from |
| `update` | ✅ supported | Applies function to map value at key |  |
| `update-in` | ✅ supported | Applies function to nested map value |  |
| `update-keys` | ✅ supported | Applies function to map keys |  |
| `update-proxy` | ❌ not_relevant | Updates proxy method implementations | relies on Java interop/proxy class system |
| `update-vals` | ✅ supported | Applies function to map values |  |
| `val` | ✅ supported | Returns value of map entry |  |
| `vals` | ✅ supported | Returns map values |  |
| `var-get` | ❌ not_relevant | Gets value of var | relies on specific var/namespace system |
| `var-set` | ❌ not_relevant | Sets var in thread-local binding | relies on mutable thread-local bindings |
| `var?` | ❌ not_relevant | Returns true if var | relies on var data structure absent in PTC-Lisp |
| `vary-meta` | ❌ not_relevant | Returns value with transformed metadata | relies on metadata feature |
| `vec` | ✅ supported | Converts to vector |  |
| `vector` | ✅ supported | Creates vector from items |  |
| `vector?` | ✅ supported | Returns true if vector |  |
| `volatile!` | ❌ not_relevant | Creates volatile with initial value | relies on mutable state |
| `volatile?` | ❌ not_relevant | Returns true if volatile | relies on mutable state |
| `vreset!` | ❌ not_relevant | Sets volatile value | relies on mutable state |
| `vswap!` | ❌ not_relevant | Updates volatile with function | involves mutable state (volatiles) |
| `when` | ✅ supported | Evaluates body if test true |  |
| `when-first` | ✅ supported | Evaluates body if seq non-empty |  |
| `when-let` | ✅ supported | Binds if truthy, evaluates body |  |
| `when-not` | ✅ supported | Evaluates body if test false |  |
| `when-some` | ✅ supported | Binds if not nil, evaluates body |  |
| `while` | ❌ not_relevant | Repeats body while test true | imperative looping construct typically relying on side effects |
| `with-bindings` | ❌ not_relevant | Executes body with thread-local bindings | relies on thread-local state which is not supported in the BEAM model for PTC-Lisp |
| `with-in-str` | ❌ not_relevant | Evaluates body with string as input | relies on I/O streams |
| `with-local-vars` | ❌ not_relevant | Evaluates body with local var bindings | requires mutable local vars |
| `with-meta` | ❌ not_relevant | Returns value with new metadata | metadata is not supported |
| `with-open` | ❌ not_relevant | Opens resources, closes on exit | relies on I/O and resource management |
| `with-out-str` | ❌ not_relevant | Captures output to string | relies on capturing side-effecting I/O |
| `with-precision` | ❌ not_relevant | Sets decimal precision for body | relies on specific BigDecimal support and dynamic binding context not present in PTC-Lisp |
| `with-redefs` | ❌ not_relevant | Redefines vars for body duration | modifies global var bindings, which is not supported in a functional, immutable sandbox |
| `xml-seq` | ❌ not_relevant | Lazy seq of XML elements | relies on lazy sequences and I/O-related parsing |
| `zero?` | ✅ supported | Returns true if number is zero |  |
| `zipmap` | ✅ supported | Creates map from keys and values seqs |  |
