## Index of all namespaces

« Project + dependencies

Generic interfaces This library provides generic interfaces in the form of multimethods that can be implemented for any type. The interfaces partly duplicate existing non-generic functions in clojure.core (arithmetic, comparison, collections) and partly provide additional functions that can be defined for a wide variety of types (functors, math functions).

Generic arithmetic interface This library defines generic versions of + - * / as multimethods that can be defined for any type. The minimal required implementations for a type are binary + and * plus unary - and /. Everything else is derived from these automatically. Explicit binary definitions for - and / can be provided for efficiency reasons.

Generic collection interface This library defines generic versions of common collection-related functions as multimethods that can be defined for any type.

Generic comparison interface This library defines generic versions of = not= < > <= >= zero? as multimethods that can be defined for any type. Of the greater/less-than relations, types must minimally implement >.

Generic math function interface This library defines generic versions of common mathematical functions such as sqrt or sin as multimethods that can be defined for any type.