change old terminology span/odor

This commit is contained in:
Tinnus Napbus 2023-08-02 01:02:12 +12:00
parent 406ceee464
commit cbc75e8a0b
6 changed files with 19 additions and 18 deletions

View File

@ -276,7 +276,7 @@ every step in the path the request takes onto the chain until we get to the
terminal cause of the computation. Then we use this causal stack to route
results back to the caller.
The Arvo causal stack is called a `duct`. This is represented simply as a list of paths, where each path represents a step in the causal chain. The first element in the path is the first letter of whichever vane handled that step in the computation, or the empty span for Unix.
The Arvo causal stack is called a `duct`. This is represented simply as a list of paths, where each path represents a step in the causal chain. The first element in the path is the first letter of whichever vane handled that step in the computation, or the empty path element for Unix.
Here's a `duct` that was recently observed in the wild upon entering `-time ~s1`
into the dojo and pressing Enter, which sets a timer for one second that will
@ -301,7 +301,7 @@ time app. This app returns a `@d` which denotes the current time, which falls do
which drops it through to the terminal. Terminal drops this down to Dill, which
converts it into an effect that Unix will recognize as a request to print the
current time to the screen. When Dill produces this, the last path in the `duct` has an
initial element of the empty span, so this is routed to Unix, which applies the effects.
initial empty element, so this is routed to Unix, which applies the effects.
This is a call stack, with a crucial feature: the stack is a first-class citizen. You can respond over a `duct` zero, one, or many times. You can save `duct`s for later use. There are definitely parallels to Scheme-style continuations, but simpler and with more structure.

View File

@ -127,10 +127,11 @@ Here is the line of code in `arvo.hoon`, found in the [section
First we note that this line is executed only if the laconic bit is set to true,
as we did when we input `|verb`. Here, `ovo` is the input `ovum`. Knowing that an `ovum` is a `[p=wire q=curd]`,
we can then say that this is a `%unix` `move` tagged with `%belt` whose cause is a `wire` given by `//term/1`,
where the empty span `//` represents Unix and `term/1` represents the terminal
in Unix. Here we have a `wire` instead of a `duct` (i.e. a list of `wire`s)
since Unix I/O events are always the beginning and end of the Arvo event loop,
thus only a single `wire` is ever required at this initial stage.
where the empty path element `//` represents Unix and `term/1`
represents the terminal in Unix. Here we have a `wire` instead of a
`duct` (i.e. a list of `wire`s) since Unix I/O events are always the
beginning and end of the Arvo event loop, thus only a single `wire` is
ever required at this initial stage.
The `""` here is a metadatum that keeps track of how many steps deep in the
causal chain the event is. An event

View File

@ -121,15 +121,15 @@ usage = "stdlib"
slug = "#ruxat"
desc = "Used in the Hoon standard library."
[glossaryEntry."Soft-cast by odor"]
name = "Soft-cast by odor"
[glossaryEntry."Soft-cast by aura"]
name = "Soft-cast by aura"
symbol = "sand"
usage = "stdlib"
slug = "#sand"
desc = "Used in the Hoon standard library."
[glossaryEntry."Check odor validity"]
name = "Check odor validity"
[glossaryEntry."Check aura validity"]
name = "Check aura validity"
symbol = "sane"
usage = "stdlib"
slug = "#sane"

View File

@ -2,8 +2,8 @@
title = "4l: Atom Parsing"
weight = 39
[glossaryEntry."Parse odor-atom pair"]
name = "Parse odor-atom pair"
[glossaryEntry."Parse aura-atom pair"]
name = "Parse aura-atom pair"
symbol = "bisk:so"
usage = "stdlib"
slug = "#biskso"

View File

@ -23,15 +23,15 @@ usage = "stdlib"
slug = "#slat"
desc = "Used in the Hoon standard library."
[glossaryEntry."Demand: parse cord with input odor"]
name = "Demand: parse cord with input odor"
[glossaryEntry."Demand: parse cord with input aura"]
name = "Demand: parse cord with input aura"
symbol = "slav"
usage = "stdlib"
slug = "#slav"
desc = "Used in the Hoon standard library."
[glossaryEntry."Parse cord to input odor"]
name = "Parse cord to input odor"
[glossaryEntry."Parse cord to input aura"]
name = "Parse cord to input aura"
symbol = "slaw"
usage = "stdlib"
slug = "#slaw"

View File

@ -58,8 +58,8 @@ usage = "stdlib"
slug = "#face"
desc = "Used in the Hoon standard library."
[glossaryEntry."Odor compatibility (compiler utility)"]
name = "Odor compatibility (compiler utility)"
[glossaryEntry."Aura compatibility (compiler utility)"]
name = "Aura compatibility (compiler utility)"
symbol = "fitz"
usage = "stdlib"
slug = "#fitz"