Library API

One exact index for every library export.

43 modules and 584 exports, generated from reviewed module metadata and the checked public surface.

43 modules

Portable libraries

19 modules, 215 exports.

stdlib/bit.eli

bit

stable

Portable 32-bit population count and bit rotation operations.

SourceSpecification 0052

  • bit-count
  • rotate-left
  • rotate-right

stdlib/data.eli

data

stable

Portable grouping, indexing, and counting for ordinary sequences.

SourceSpecification 0027

  • count-by
  • group-by
  • index-by

stdlib/data-text.eli

data-text

stable

Portable Result-based reading and printing of canonical data text.

SourceSpecification 0071

  • data-text-result-value
  • print-value
  • read-value
  • read-values

stdlib/function.eli

function

stable

Portable function composition, predicate combination, nil normalization, and trampoline execution.

SourceSpecification 0149

  • comp
  • complement
  • constantly
  • every-pred
  • fnil
  • identity
  • juxt
  • partial
  • some-fn
  • trampoline

stdlib/hierarchy.eli

hierarchy

stable

Authenticated immutable derivation hierarchies with transitive and vector relation queries.

SourceSpecification 0157

  • ancestors
  • derive
  • descendants
  • empty-hierarchy
  • hierarchy?
  • is-a?
  • parents
  • underive

stdlib/identifier.eli

identifier

stable

Portable keyword and symbol construction, classification, and naming.

SourceSpecification 0070

  • identifier-name
  • identifier-namespace
  • identifier?
  • keyword
  • keyword?
  • portable-keyword?
  • portable-symbol?
  • qualified-name
  • symbol
  • symbol?

stdlib/json.eli

json

stable

Strict bounded JSON parsing and deterministic persistent-value encoding.

SourceSpecification 0076

  • json-error-code
  • json-error-message
  • json-error-offset
  • json-error-path
  • json-error?
  • parse-json
  • stringify-json

stdlib/metadata.eli

metadata

stable

Portable immutable metadata access, validation, and transformation.

SourceSpecification 0068

  • meta
  • metadata-valid?
  • supports-metadata?
  • vary-meta
  • with-meta

stdlib/multimethod.eli

multimethod

stable

Callable multimethods with exact and hierarchical dispatch, transitive preferences, ambiguity detection, and persistent snapshots.

SourceSpecification 0157

  • add-method!
  • default-dispatch-value
  • derive!
  • dispatch-fn
  • dispatch-value
  • get-method
  • has-method?
  • methods
  • multi-fn
  • multi-fn-hierarchy
  • multi-fn-name
  • multi-fn?
  • prefer-method!
  • preferences
  • preferred-method?
  • remove-all-methods!
  • remove-all-preferences!
  • remove-method!
  • remove-preference!
  • set-hierarchy!
  • underive!

stdlib/numeric.eli

numeric

stable

Exact Number classification and checked safe-integer arithmetic.

SourceSpecification 0077

  • abs
  • checked-add
  • checked-multiply
  • checked-subtract
  • clamp
  • compare-number
  • even?
  • finite?
  • gcd
  • infinite?
  • integer?
  • lcm
  • max-number
  • min-number
  • modulo
  • nan?
  • negative?
  • number?
  • odd?
  • positive?
  • quot
  • rem
  • safe-integer?
  • sign
  • zero?

stdlib/object.eli

object

stable

Portable immutable operations for string-keyed host objects.

SourceSpecification 0026

  • assoc
  • dissoc
  • filter-values
  • has?
  • key-in?
  • keys
  • map-values
  • merge
  • omit
  • pick
  • update

stdlib/persistent-list.eli

persistent-list

stable

Persistent linked lists with structural sharing and immutable metadata.

SourceSpecification 0054

  • empty-persistent-list
  • persistent-list-conj
  • persistent-list-cons
  • persistent-list-count
  • persistent-list-empty?
  • persistent-list-first
  • persistent-list-from-array
  • persistent-list-meta
  • persistent-list-nth
  • persistent-list-peek
  • persistent-list-pop
  • persistent-list-reduce
  • persistent-list-rest
  • persistent-list-reverse
  • persistent-list-to-array
  • persistent-list-with-meta
  • persistent-list?

stdlib/persistent-map.eli

persistent-map

stable

Persistent HAMT maps with value semantics and collision handling.

SourceSpecification 0055

  • empty-persistent-map
  • persistent-map-assoc
  • persistent-map-count
  • persistent-map-dissoc
  • persistent-map-from-entries
  • persistent-map-get
  • persistent-map-has?
  • persistent-map-meta
  • persistent-map-reduce
  • persistent-map-to-entries
  • persistent-map-with-meta
  • persistent-map?

stdlib/persistent-set.eli

persistent-set

stable

Persistent map-backed sets and immutable set algebra.

SourceSpecification 0056

  • empty-persistent-set
  • persistent-set-compatible?
  • persistent-set-conj
  • persistent-set-count
  • persistent-set-difference
  • persistent-set-disj
  • persistent-set-disjoint?
  • persistent-set-empty?
  • persistent-set-equal?
  • persistent-set-from-array
  • persistent-set-has?
  • persistent-set-intersection
  • persistent-set-meta
  • persistent-set-reduce
  • persistent-set-subset?
  • persistent-set-superset?
  • persistent-set-to-array
  • persistent-set-union
  • persistent-set-with-meta
  • persistent-set?

stdlib/persistent-vector.eli

persistent-vector

stable

Persistent 32-way vectors with tail optimization and structural sharing.

SourceSpecification 0053

  • empty-persistent-vector
  • persistent-vector-assoc
  • persistent-vector-conj
  • persistent-vector-count
  • persistent-vector-from-array
  • persistent-vector-meta
  • persistent-vector-nth
  • persistent-vector-peek
  • persistent-vector-pop
  • persistent-vector-reduce
  • persistent-vector-to-array
  • persistent-vector-with-meta
  • persistent-vector?

stdlib/result.eli

result

stable

Inspectable Ok and Err values with composable branch operations.

SourceSpecification 0075

  • and-then
  • collect-results
  • err
  • err?
  • fold
  • map-err
  • map-ok
  • ok
  • ok?
  • or-else
  • result-payload
  • result?
  • traverse-results
  • unwrap-or
  • unwrap-or-else

stdlib/sequence.eli

sequence

stable

Portable sequence traversal, transformation, search, and range generation.

SourceSpecification 0023

  • concat
  • drop
  • every?
  • filter
  • find
  • map
  • range
  • range-by
  • reduce
  • reverse
  • some?
  • take

stdlib/text.eli

text

stable

Portable text predicates, slicing, joining, trimming, and repetition.

SourceSpecification 0025

  • blank?
  • contains?
  • empty?
  • ends-with?
  • join
  • repeat
  • slice
  • starts-at?
  • starts-with?
  • strip-prefix
  • strip-suffix
  • trim
  • whitespace?

stdlib/value.eli

value

stable

Deterministic value equality, hashing, maps, and sets.

SourceSpecification 0057

  • empty-value-map
  • empty-value-set
  • value-equal?
  • value-hash
  • value-map-from-entries
  • value-set-from-array

Runtime core

21 modules, 341 exports.

stdlib/core/collection.eli

core-collection

stable

Protocol-driven capability inspection, persistent collection classification, bounded counting, value distinctness, O(1) subvector views, construction, lookup, reduction, removal, stack access, and reversible replayable views.

SourceSpecification 0066

  • IAssociative
  • IConj
  • ICounted
  • IEmptyable
  • IIndexed
  • IKVReduce
  • ILookup
  • IMap
  • IReduce
  • IReversible
  • ISeqable
  • ISet
  • IStack
  • ReductionView
  • SequenceView
  • assoc
  • associative?
  • bounded-count
  • collection-count
  • collection-nth
  • collection-seq
  • collection?
  • conj
  • contains?
  • counted?
  • disj
  • dissoc
  • distinct?
  • empty
  • empty?
  • indexed?
  • list?
  • lookup
  • map?
  • not-empty
  • peek
  • pop
  • queue?
  • reduce
  • reduce-kv
  • reduced
  • reduced?
  • reducible?
  • reduction-view
  • reduction-view?
  • reversible?
  • rseq
  • seqable?
  • sequence-view
  • sequence?
  • sequential?
  • set?
  • subvec
  • unbounded-sequence-view
  • unreduced
  • vector?

stdlib/core/data.eli

core-data

stable

Collection-native grouping, keyed projection and transformation, nested associative updates, merging, selection, and zipping.

SourceSpecification 0066

  • assoc-in
  • count-by
  • frequencies
  • get-in
  • group-by
  • index-by
  • keys
  • merge
  • merge-with
  • select-keys
  • update
  • update-in
  • update-keys
  • update-vals
  • vals
  • zipmap

stdlib/core/data-text.eli

core-data-text

stable

Canonical readable data text for persistent values and identifiers.

SourceSpecification 0069

  • DataTextError
  • IPrint
  • print-value
  • read-value
  • read-values

stdlib/core/identifier.eli

core-identifier

stable

First-class keyword and symbol values with qualified names.

SourceSpecification 0067

  • EliscriptSymbol
  • Keyword
  • identifier-name
  • identifier-namespace
  • identifier?
  • keyword
  • keyword?
  • qualified-name
  • symbol
  • symbol?

stdlib/core/lazy-sequence.eli

core-lazy-sequence

stable

Demand-driven memoized sequences, deferred recursive tails, direct lazy transformations, and realization inspection.

SourceSpecification 0176

  • lazy-cons
  • lazy-dedupe
  • lazy-distinct
  • lazy-drop
  • lazy-drop-while
  • lazy-filter
  • lazy-interpose
  • lazy-keep
  • lazy-keep-indexed
  • lazy-map
  • lazy-map-indexed
  • lazy-mapcat
  • lazy-partition-all
  • lazy-partition-by
  • lazy-remove
  • lazy-seq
  • lazy-seq?
  • lazy-take
  • lazy-take-nth
  • lazy-take-while
  • realize
  • realized-count
  • realized?

stdlib/core/metadata.eli

core-metadata

stable

Immutable metadata protocols and value-preserving updates.

SourceSpecification 0068

  • IMeta
  • IWithMeta
  • meta
  • supports-metadata?
  • vary-meta
  • with-meta

stdlib/core/object.eli

core-object

stable

Protocol-driven immutable keyed-object transformations.

SourceSpecification 0081

  • assoc
  • dissoc
  • filter-values
  • has?
  • key-in?
  • keys
  • map-values
  • merge
  • omit
  • pick
  • update

stdlib/core/order.eli

core-order

stable

Open comparison protocol, stable sorting, comparator adaptation, and keyed extrema.

SourceSpecification 0066

  • IComparable
  • comparator
  • compare-values
  • max-key
  • min-key
  • reverse-comparator
  • sort
  • sort-by

stdlib/core/protocol.eli

core-protocol

stable

Open protocol definition, extension, inspection, and dispatch policy.

SourceSpecification 0066

  • define-protocol
  • define-protocol-from-definition
  • extend-protocol-category
  • extend-protocol-default
  • extend-protocol-type
  • implements-protocol-operation?
  • implements-protocol?
  • protocol-definition
  • protocol-host-category
  • protocol-method
  • protocol-slot

stdlib/core/record.eli

core-record

stable

Declarative immutable Record types with persistent Map, value, metadata, and open protocol semantics.

SourceSpecification 0168

  • define-record-type
  • record-field-names
  • record-type
  • record-type-name
  • record-type?
  • record?

stdlib/core/regex.eli

core-regex

stable

Immutable regular-expression patterns, capture-aware matching, memoized lazy scanning, and literal or callback replacement.

SourceSpecification 0178

  • re-find
  • re-matches
  • re-replace
  • re-seq
  • regex
  • regex-flags
  • regex-source
  • regex?

stdlib/core/seq.eli

core-sequence

stable

Protocol-driven replayable sources, head/tail views, finite transformation, interleaving, stepped partitioning, tree traversal, and reduction history.

SourceSpecification 0066

  • butlast
  • concat
  • cycle
  • dedupe
  • distinct
  • drop
  • drop-last
  • drop-while
  • every?
  • ffirst
  • filter
  • find
  • first
  • flatten
  • fnext
  • generate
  • interleave
  • interleave-all
  • interpose
  • iterate
  • keep
  • keep-indexed
  • last
  • map
  • map-indexed
  • mapcat
  • next
  • nfirst
  • nnext
  • not-any?
  • not-every?
  • nth-next
  • nth-rest
  • partition
  • partition-all
  • partition-by
  • prepend
  • range
  • reductions
  • remove
  • repeat
  • repeatedly
  • rest
  • reverse
  • second
  • sequence-nth
  • some
  • split-at
  • split-with
  • take
  • take-last
  • take-nth
  • take-while
  • tree-seq

stdlib/core/set.eli

core-set

stable

Protocol-driven persistent Set algebra, membership relations, and relational data operations.

SourceSpecification 0066

  • difference
  • disjoint?
  • index
  • intersection
  • join
  • map-invert
  • project
  • rename
  • rename-keys
  • select
  • set
  • subset?
  • superset?
  • union

stdlib/core/sorted.eli

core-sorted

stable

Persistent AVL Maps and Sets with custom comparators, reversible traversal, and bounded range queries.

SourceSpecification 0175

  • comparator
  • empty-sorted-map
  • empty-sorted-map-by
  • empty-sorted-set
  • empty-sorted-set-by
  • rsubseq
  • sorted-map
  • sorted-map-by
  • sorted-map?
  • sorted-seq
  • sorted-seq-from
  • sorted-set
  • sorted-set-by
  • sorted-set?
  • sorted?
  • subseq

stdlib/core/text.eli

core-text

stable

Portable text predicates, slicing, joining, and affix operations.

SourceSpecification 0081

  • blank?
  • contains?
  • empty?
  • ends-with?
  • join
  • repeat
  • slice
  • starts-at?
  • starts-with?
  • strip-prefix
  • strip-suffix
  • trim
  • whitespace?

stdlib/core/transducer.eli

core-transducer

stable

Composable single-pass transducers, replayable reducible pipelines, memoized pull sequences, and effectful consumption.

SourceSpecification 0066

  • catting
  • completing
  • compose-transducers
  • deduping
  • distincting
  • dropping
  • dropping-while
  • eduction
  • filtering
  • interposing
  • into
  • keeping
  • keeping-indexed
  • mapcatting
  • mapping
  • mapping-indexed
  • partitioning-all
  • partitioning-by
  • removing
  • run!
  • sequence
  • taking
  • taking-nth
  • taking-while
  • transduce

stdlib/core/transient.eli

core-transient

stable

Owner-token transient builders for efficient isolated construction.

SourceSpecification 0066

  • IEditable
  • ITransientCollection
  • assoc!
  • conj!
  • dissoc!
  • persistent!
  • transient

stdlib/core/type.eli

core-type

stable

Frozen positional identity types and lexical anonymous values with complete direct protocol implementations.

SourceSpecification 0169

  • define-type
  • defined-type-fields
  • defined-type-name
  • reify-protocols
  • type-definition?
  • type-of
  • type-value?

stdlib/core/walk.eli

core-walk

stable

Stack-safe pre-order and post-order traversal and rewriting of nested persistent values.

SourceSpecification 0173

  • postwalk
  • postwalk-replace
  • prewalk
  • prewalk-replace
  • walk

stdlib/core/zipper.eli

core-zipper

stable

Immutable tree locations for stack-safe navigation, editing, and persistent root reconstruction.

SourceSpecification 0174

  • append-child
  • branch?
  • children
  • down
  • edit
  • end?
  • insert-child
  • insert-left
  • insert-right
  • left
  • leftmost
  • lefts
  • list-zipper
  • make-node
  • next
  • node
  • path
  • prev
  • remove
  • replace
  • right
  • rightmost
  • rights
  • root
  • up
  • vector-zipper
  • zipper
  • zipper?

stdlib/persistent-queue.eli

persistent-queue

stable

Persistent FIFO queues with shared Vector views, constant-time dequeue, and amortized constant-time enqueue.

SourceSpecification 0166

  • empty-persistent-queue
  • persistent-queue
  • persistent-queue-conj
  • persistent-queue-count
  • persistent-queue-empty?
  • persistent-queue-meta
  • persistent-queue-peek
  • persistent-queue-pop
  • persistent-queue-reduce
  • persistent-queue-to-array
  • persistent-queue-with-meta
  • persistent-queue?

Host interoperation

1 modules, 11 exports.

stdlib/interop/js.eli

interop-js

stable

Explicit shallow and bounded conversion to native JavaScript containers.

SourceSpecification 0073

  • array?
  • from-js
  • js-array
  • js-map
  • js-map?
  • js-object
  • js-set
  • js-set?
  • object?
  • to-js
  • to-js-object

State

2 modules, 17 exports.

stdlib/deferred.eli

deferred

stable

Synchronous delayed computation and value-semantic function memoization.

SourceSpecification 0161

  • delay
  • delay?
  • force
  • memoize
  • realized?

stdlib/state/atom.eli

state-atom

stable

Synchronous atomic references with value-pair transitions, compare-and-set, validators, and ordered watches.

SourceSpecification 0072

  • add-watch
  • atom
  • atom?
  • compare-and-set!
  • deref
  • get-validator
  • remove-watch
  • reset!
  • reset-vals!
  • set-validator!
  • swap!
  • swap-vals!