The functional_at_instant audit: a moment where two fluent values of one subject hold,
read on demand. vaelii.core delegates to it. See docs/time.md,
"Functionality at an instant", and docs/namespaces.md, "The layering".
The `functional_at_instant` audit: a moment where two fluent values of one subject hold, read on demand. `vaelii.core` delegates to it. See docs/time.md, "Functionality at an instant", and docs/namespaces.md, "The layering".
(all-functional-at-instant-violations kb context)Every (functional_at_instant f) declaration visible in context, audited, as
{f #{violation …} …}; a declaration that clashes nowhere is omitted.
Every `(functional_at_instant f)` declaration visible in `context`, audited, as
`{f #{violation …} …}`; a declaration that clashes nowhere is omitted.(functional-at-instant-violations kb f context)The per-instant clashes of one (functional_at_instant f) declaration in context, as a
set of maps {:function f :subject s :instant t :values #{v …} :kind k} — one per
moment t at which more than one distinct value of f holds for one subject s. :kind
is :merge when every clashing value is a symbol (the pair functional would merge) and
:contradiction otherwise (two numbers or strings functional refuses outright).
The candidate moments are the time_point members ask answers in context and the
later moment of each instantBefore pair it answers there, which holds an (InstantFn …) moment no membership names. holdsAt is asked of each filler at each. The read
follows belief and is scoped to context.
The per-instant clashes of one `(functional_at_instant f)` declaration in `context`, as a
set of maps `{:function f :subject s :instant t :values #{v …} :kind k}` — one per
moment `t` at which more than one distinct value of `f` holds for one subject `s`. `:kind`
is `:merge` when every clashing value is a symbol (the pair `functional` would merge) and
`:contradiction` otherwise (two numbers or strings `functional` refuses outright).
The candidate moments are the `time_point` members `ask` answers in `context` and the
later moment of each `instantBefore` pair it answers there, which holds an `(InstantFn
…)` moment no membership names. `holdsAt` is asked of each filler at each. The read
follows belief and is scoped to `context`.cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |