.. | ||
FunctionRegistry_Core.res | ||
FunctionRegistry_Core.resi | ||
FunctionRegistry_Helpers.res | ||
FunctionRegistry_Library.res | ||
README.md |
Function Registry
The function registry is a library for organizing function definitions.
The main interface is fairly constrained. Basically, write functions like the following, and add them to a big array.
Function.make(
~name="Normal",
~definitions=[
FnDefinition.make(
~name="Normal",
~definitions=[
FnDefinition.make(~name="normal", ~inputs=[FRTypeDistOrNumber, FRTypeDistOrNumber], ~run=(
inputs,
env,
) =>
inputs
->Prepare.ToValueTuple.twoDistOrNumber
->E.R.bind(
Process.twoDistsOrNumbersToDistUsingSymbolicDist(
~fn=E.Tuple2.toFnCall(SymbolicDist.Normal.make),
~env,
~values=_,
),
)
->E.R2.fmap(Wrappers.evDistribution)
),
],
)
],
)
The Function name is just there for future documentation. The function defintions
Key Files
FunctionRegistry_Core
Key types, internal functionality, and a Registry
module with a matchAndRun
function to call function definitions.
FunctionRegistry_Library A list of all the Functions defined in the Function Registry.
FunctionRegistry_Helpers A list of helper functions for the FunctionRegistry_Library.