Indexes of Joker Standard Namespaces and Types
Index of Special Forms
Index of Namespaces
- joker.base64
- joker.better-cond
- joker.bolt
- joker.core
- joker.crypto
- joker.csv
- joker.filepath
- joker.git
- joker.hex
- joker.hiccup
- joker.html
- joker.http
- joker.io
- joker.json
- joker.markdown
- joker.math
- joker.os
- joker.pprint
- joker.repl
- joker.runtime
- joker.set
- joker.strconv
- joker.string
- joker.template
- joker.test
- joker.time
- joker.tools.cli
- joker.url
- joker.uuid
- joker.walk
- joker.yaml
Index of Types
- ArrayMap
- ArrayMapSeq
- ArrayNodeSeq
- ArraySeq
- ArrayVector
- Associative
- Atom
- BigFloat
- BigInt
- BoltDB
- Boolean
- Buffer
- BufferedReader
- Callable
- Channel
- Char
- Collection
- Comparable
- Comparator
- ConsSeq
- Counted
- CountedIndexed
- Delay
- Deref
- Double
- Error
- EvalError
- ExInfo
- File
- Fn
- Gettable
- GitRepo
- HashMap
- IOReader
- IOWriter
- Indexed
- Int
- KVReduce
- Keyword
- LazySeq
- List
- Map
- MapSet
- MappingSeq
- Meta
- Named
- Namespace
- Nil
- NodeSeq
- Number
- ParseError
- Pending
- Proc
- Ratio
- RecurBindings
- Reduce
- Ref
- Regex
- Reversible
- Seq
- Seqable
- Sequential
- Set
- Stack
- String
- StringSeq
- Symbol
- Time
- Type
- Var
- Vec
- Vector
- VectorRSeq
- VectorSeq
Joker Special Forms
-
def
(def symbol doc-string? init?)Creates and interns a global var with the name
of symbol in the current namespace (*ns*) or locates such a var if
it already exists. If init is supplied, it is evaluated, and the
root binding of the var is set to the resulting value. If init is
not supplied, the root binding of the var is unaffected. -
do
(do exprs*)Evaluates the expressions in order and returns the value of
the last. If no expressions are supplied, returns nil. -
if
(if test then else?)Evaluates test. If not the singular values nil or false,
evaluates and yields then, otherwise, evaluates and yields else. If
else is not supplied it defaults to nil. -
quote
(quote form)Yields the unevaluated form.
-
recur
(recur exprs*)Evaluates the exprs in order, then, in parallel, rebinds
the bindings of the recursion point to the values of the exprs.
Execution then jumps back to the recursion point, a loop or fn method. -
throw
(throw expr)The expr is evaluated and thrown, therefore it should yield an Error object.
User code should normally use (ex-info) function to create new Error objects. -
try
(try expr* catch-clause* finally-clause?)catch-clause => (catch type name expr*)
finally-clause => (finally expr*)
Catches and handles errors.
User code should normally use (ex-info) function to create new Error objects. -
var
(var symbol)The symbol must resolve to a var, and the Var object
itself (not its value) is returned. The reader macro #'x expands to (var x).
Joker Standard Namespaces
-
joker.base64
v1.0Encodes and decodes strings with standard padded Base64 as specified by RFC 4648.
details -
joker.better-cond
v1.0A collection of variations on Clojure's core macros.
details -
joker.bolt
v1.0Provides a small string-oriented API for the Bolt embedded key/value database.
details -
joker.core
v1.0Core library of Joker.
details -
joker.crypto
v1.0Computes HMACs and common message digests, returning raw digest bytes as strings.
details -
joker.csv
v1.0Reads and writes comma-separated values (CSV) using RFC 4180-style parsing and formatting.
details -
joker.filepath
v1.0Manipulates platform-specific filesystem paths and exposes a few path-aware filesystem queries.
details -
joker.git
v1.0Reads and mutates local Git repositories through go-git-backed map-oriented wrappers.
details -
joker.hex
v1.0Encodes and decodes strings with lower-case hexadecimal text.
details -
joker.hiccup
v1.0Renders HTML, XML, or XHTML markup to a string, based on prior work in Hiccup.
details -
joker.html
v1.0Escapes and unescapes HTML text entities.
details -
joker.http
v1.0Provides HTTP client requests, blocking servers, static file serving, and Server-Sent Events (SSE).
details -
joker.io
v1.0Provides small helpers for copying, piping, reading, and closing Joker I/O objects.
details -
joker.json
v1.0Encodes Joker values to JSON and decodes JSON strings or streams into Joker values.
details -
joker.markdown
v1.0Renders GitHub Flavored Markdown to HTML.
details -
joker.math
v1.0Provides floating-point mathematical functions, IEEE-754 helpers, and numeric constants.
details -
joker.os
v1.0Provides filesystem, process, environment, and watcher helpers backed by the host operating system.
details -
joker.pprint
v1.0Pretty printing utilities. Based on Clojure implementation.
details -
joker.repl
v1.0Utilities meant to be used interactively at the REPL.
details -
joker.runtime
v1.0Reports build-time Go and Joker runtime metadata.
details -
joker.set
v1.0Set operations such as union/intersection.
details -
joker.strconv
v1.0Converts booleans, numbers, chars, and quoted literals to and from strings.
details -
joker.string
v1.0Provides Unicode-aware string predicates, transforms, searches, and splitting helpers.
details -
joker.template
v1.0Macros that expand to repeated copies of a template expression.
details -
joker.test
v1.0A unit testing framework.
details -
joker.time
v1.0Creates, parses, formats, compares, and converts times and nanosecond durations.
details -
joker.tools.cli
v1.0Tools for working with command line arguments.
details -
joker.url
v1.0Escapes URL path/query components and parses URL-encoded query strings.
details -
joker.uuid
v1.0Generates random UUID version 4 strings.
details -
joker.walk
v1.0Defines a generic tree walker for Clojure data structures.
details -
joker.yaml
v1.0Encodes Joker values to YAML and decodes YAML strings into Joker values.
details
Joker Standard Types
Note: These types are "omnipresent", in that they're not members of any particular namespace, but are available for resolution regardless of the current value of *ns* (the current namespace).
-
ArrayMap
v1.0(Concrete reference type)
-
ArrayMapSeq
v1.0(Concrete reference type)
-
ArrayNodeSeq
v1.0(Concrete reference type)
-
ArraySeq
v1.0(Concrete reference type)
-
ArrayVector
v1.0(Concrete reference type)
-
Associative
v1.0(Interface type)
-
Atom
v1.0(Concrete reference type)
-
BigFloat
v1.0(Concrete reference type)
Wraps the Go 'math/big.Float' type -
BigInt
v1.0(Concrete reference type)
Wraps the Go 'math/big.Int' type -
BoltDB
v1.0(Concrete type)
Wraps Bolt DB type -
Boolean
v1.0(Concrete type)
Wraps the Go 'bool' type -
Buffer
v1.0(Concrete reference type)
-
BufferedReader
v1.0(Concrete reference type)
-
Callable
v1.0(Interface type)
-
Channel
v1.0(Concrete reference type)
-
Char
v1.0(Concrete type)
Wraps the Go 'rune' type -
Collection
v1.0(Interface type)
-
Comparable
v1.0(Interface type)
-
Comparator
v1.0(Interface type)
-
ConsSeq
v1.0(Concrete reference type)
-
Counted
v1.0(Interface type)
-
CountedIndexed
v1.0(Interface type)
-
Delay
v1.0(Concrete reference type)
-
Deref
v1.0(Interface type)
-
Double
v1.0(Concrete type)
Wraps the Go 'float64' type -
Error
v1.0(Interface type)
-
EvalError
v1.0(Concrete reference type)
-
ExInfo
v1.0(Concrete reference type)
-
File
v1.0(Concrete reference type)
-
Fn
v1.0(Concrete reference type)
A callable function or macro implemented via Joker code -
Gettable
v1.0(Interface type)
-
GitRepo
v1.0(Concrete type)
Wraps git.Repository type -
HashMap
v1.0(Concrete reference type)
-
IOReader
v1.0(Interface type)
-
IOWriter
v1.0(Interface type)
-
Indexed
v1.0(Interface type)
-
Int
v1.0(Concrete type)
Wraps the Go 'int' type, which is 32 bits wide on 32-bit hosts, 64 bits wide on 64-bit hosts, etc. -
KVReduce
v1.0(Interface type)
-
Keyword
v1.0(Concrete type)
A possibly-namespace-qualified name prefixed by ':' -
LazySeq
v1.0(Concrete reference type)
-
List
v1.0(Concrete reference type)
-
Map
v1.0(Interface type)
-
MapSet
v1.0(Concrete reference type)
-
MappingSeq
v1.0(Concrete reference type)
-
Meta
v1.0(Interface type)
-
Named
v1.0(Interface type)
-
Namespace
v1.0(Concrete reference type)
-
Nil
v1.0(Concrete type)
The 'nil' value -
NodeSeq
v1.0(Concrete reference type)
-
Number
v1.0(Interface type)
-
ParseError
v1.0(Concrete reference type)
-
Pending
v1.0(Interface type)
-
Proc
v1.0(Concrete reference type)
A callable function implemented via Go code -
Ratio
v1.0(Concrete reference type)
Wraps the Go 'math.big/Rat' type -
RecurBindings
v1.0(Concrete reference type)
-
Reduce
v1.0(Interface type)
-
Ref
v1.0(Interface type)
-
Regex
v1.0(Concrete reference type)
Wraps the Go 'regexp.Regexp' type -
Reversible
v1.0(Interface type)
-
Seq
v1.0(Interface type)
-
Seqable
v1.0(Interface type)
-
Sequential
v1.0(Interface type)
-
Set
v1.0(Interface type)
-
Stack
v1.0(Interface type)
-
String
v1.0(Concrete type)
Wraps the Go 'string' type -
StringSeq
v1.0(Concrete reference type)
-
Symbol
v1.0(Concrete type)
-
Time
v1.0(Concrete type)
Wraps the Go 'time.Time' type -
Type
v1.0(Concrete reference type)
-
Var
v1.0(Concrete reference type)
-
Vec
v1.0(Interface type)
-
Vector
v1.0(Concrete reference type)
-
VectorRSeq
v1.0(Concrete reference type)
-
VectorSeq
v1.0(Concrete reference type)