Liking cljdoc? Tell your friends :D

plumbing.graph.positional

A compilation method for graphs that avoids maps for speed. Prone to failure for graphs with more nodes than max-graph-size.

A compilation method for graphs that avoids maps for speed.
Prone to failure for graphs with more nodes than `max-graph-size`.
raw docstring

def-graph-recordclj

(def-graph-record g)
(def-graph-record g record-type-name)

Define a record for the output of a graph. It is usable as a function to be as close to a map as possible. Return the typename.

Define a record for the output of a graph. It is usable as a function to be
as close to a map as possible. Return the typename.
sourceraw docstring

eval-boundclj

(eval-bound form bindings)

Evaluate a form with some symbols bound to some values.

Evaluate a form with some symbols bound to some values.
sourceraw docstring

graph-formclj

(graph-form g arg-keywords)

Construct [body-form bindings-needed-for-eval] for a positional graph.

Construct [body-form bindings-needed-for-eval] for a positional graph.
sourceraw docstring

graph-let-bindingsclj

(graph-let-bindings g g-value-syms)

Compute the bindings for functions and intermediates needed to form the body of a positional graph, E.g. [[[f-3 ~some-function]][[intermediate-3 (f-3 intermediate-1 intermediate-2)]]]

Compute the bindings for functions and intermediates needed to form the body
of a positional graph, E.g.
  [`[[f-3 ~some-function]] `[[intermediate-3 (f-3 intermediate-1 intermediate-2)]]]
sourceraw docstring

max-graph-sizeclj

The positional compilation algorithm provided by this namespace reliably succeeds only with graphs with max-graph-size or less nodes.

The basic strategy is to generate a defrecord field for each node (of which there is a limit of around 120) and then generate a constructor function (whose code size grows linearly in the number of nodes).

The positional compilation algorithm provided by this namespace
reliably succeeds only with graphs with `max-graph-size` or less nodes.

The basic strategy is to generate a defrecord field for each node
(of which there is a limit of around 120) and then generate a constructor
function (whose code size grows linearly in the number of nodes).
sourceraw docstring

positional-flat-compileclj

(positional-flat-compile g)

Positional compile for a flat (non-nested) graph.

Positional compile for a flat (non-nested) graph.
sourceraw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close