= The `BinaryMapFn` functor
:Author: John Reppy
:Date: {release-date}
:stem: latexmath
:source-highlighter: pygments
:VERSION: {smlnj-version}

The `BinaryMapFn` functor provides a balanced-binary-tree implementation of the
xref:sig-ORD_MAP.adoc[`ORD_MAP`] signature parameterized over the key type.

The original implementation was written by Stephen Adams and was based
on the paper https://doi.org/10.1137/0202005[Binary Search Trees of Bounded Balance]
by Nievergelt and Reingold (SIAM Journal of Computing; March 1973).

It is recommended, however, that one use the xref:fun-RedBlackMapFn.adoc[`RedBlackMapFn`]
functor instead of `BinaryMapFn`, since experimentation has shown it to be
faster across the board.

== Synopsis

[source,sml]
------------
functor BinaryMapFn (K : ORD_KEY) :> ORD_MAP where type Key.ord_key = K.ord_key
------------

== See Also

xref:sig-ORD_KEY.adoc[`ORD_KEY`],
xref:sig-ORD_MAP.adoc[`ORD_MAP`],
xref:fun-RedBlackMapFn.adoc[`RedBlackMapFn`],
xref:smlnj-lib.adoc[__The Util Library__]
