@mark1russell7/coeval 0.20.0 → 0.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -35,6 +35,7 @@ A plan evaluates many times without a trace. `evaluate(machine, doc)` gives the
35
35
  | Record and replay | `recorder`, `replayer`, `encodeLog`, `decodeLog`, `ReplayLog`, `ReplayEntry`, `ReplaySettle`, `ReplayOptions`, `ReplayLogJson`, `ReplayEntryJson`, `ReplayResultJson`, `ReplayErrorJson`, `ReplayExceptionJson`, `ReplayPartJson`, `ReplayPartsJson`, `Journal`, `JOURNAL` | A recorder logs each effect of a run with its address and its outcome, and the order of the waits. A replayer answers each effect from the log for each run, and a different request gives `#REPLAY!`. `encodeLog` writes a log as JSON for a golden file |
36
36
  | Errors | `Result`, `EvalError`, `Failure`, `failures` | An error value has a code, a reason, a place and a cause. An evaluation does not throw |
37
37
  | The static kit | `walk`, `refsOf`, `mapRefs`, `check`, `CheckOptions`, `checkWorld`, `WorldIssue`, `WorldOptions` | The documents of a document in linear time, its free references, and its problems before a run, each with its place and its JSON path. A check narrows the capabilities as a run does, and it asks the hook `permits` of the machine. The hook `known` of a machine names the unknown operations. The option `verb` of `check` checks the evaluators and the declared effects of another verb. The option `types` also checks the value types. The option `run` finds a runner that can wait under a parent that cannot wait. `checkWorld` finds each kind without an evaluator for a verb of the language, before a document exists. Its option `types` also finds each bad value type of the machine |
38
+ | The steps of a language | `stepLadder`, `stepOf`, `checkStep`, `isStep`, `stepRank`, `StepLadder`, `StepWalk`, `StepNeed`, `StepReason`, `StepRefusal`, `StepKey` | A ladder of steps as data: each construct of a language needs a step. `stepOf` gives the lowest step of a document with the first node that needs it. `checkStep` refuses a document above the highest step of the host, and the refusal names the needed step (D116) |
38
39
  | The effects | `effectsOf`, `checkLatent`, `EffectsOptions` | The effects of a document that can reach the host: the declared effects, without the effects that a mask or a rule `only` removes. A host can grant exactly these capabilities. `checkLatent` compares the latent effects that a procedure declares with its body (D27) |
39
40
  | The static facts | `factsOf`, `DocFacts`, `StaticRead`, `FactsOptions`, `KindFacts`, `LazyRule` | The reads of a document with a mark for each read under a lazy part, its side, its effects and the marks `pure` and `volatile`. The contracts and the hook `facts` of a machine declare them (D24). The option `verb` names the verb |
40
41
  | Trees | `STD_WORLD` (`panel`, `box`), `nearestWalker`, `treeNodeEvaluator` | The decorated tree: each field of a node is an attribute that evaluates on demand, one time in an evaluation. A sibling is a path through the parent, and a cycle gives `#CYCLE!` with its chain. A cycle of `circular` attributes evaluates to a fixed point. A host can keep the memo cells of the attributes between evaluations, by the key of each node in its scope |