gr-base/doc/vocabulary.org

88 lines
2.4 KiB
Org Mode
Raw Normal View History

2025-08-01 11:09:48 +00:00
:PROPERTIES:
:ID: 00790dad-7881-4252-8951-23f770e3f070
:END:
#+BEGIN_EXPORT html
<style>
body {
font-family: 'Courier New', Courier, monospace;
background-color: ivory;
2025-08-05 21:47:02 +07:00
line-height: 1.5;
padding-right: 1em;
}
h2 {
margin-top: 1.8rem;
padding-left: 0.5rem;
border-left: 4px solid #3498db;
}
table {
width: 100%;
}
#content {
max-width: 48em;
2025-08-01 11:09:48 +00:00
}
.outline-2 div {
2025-08-05 21:47:02 +07:00
padding-left: 1em;
}
a:link {
color: #2E5EAA;
text-decoration: none;
}
a:visited {
color: #663399;
}
a:hover {
color: #1a4480;
text-decoration: underline;
2025-08-01 11:09:48 +00:00
}
</style>
#+END_EXPORT
2025-07-30 17:12:26 +00:00
#+title: Grimu-R vocabulary
** Weave
Defines a collection of ornaments.
** Ornament
Has reactive inputs and outputs.
Serves as an externally invocable entry point.
2025-08-05 21:47:02 +07:00
Contains spells or nested ornament instances connected by stitches.
Can be distributed within an edition.
2025-07-30 17:12:26 +00:00
** Spell
Has reactive inputs and outputs.
Atomic execution unit.
2025-08-05 21:47:02 +07:00
Cannot be directly invoked by an edition consumer.
2025-07-30 17:12:26 +00:00
May have an inscription.
2025-08-04 12:37:53 +07:00
Created from a scroll and executed in the shelf environment.
2025-07-30 17:12:26 +00:00
** Stitch
Connects a reactive input to a compatible reactive output.
2025-08-05 21:47:02 +07:00
Can be decorated on both upstream and downstream ends.
May be parameterized by a reactive input, consuming variable assignments for the decoration.
** Stitch decorator
Defines reactive behavior.
May refer to variables defined by the reactive input.
2025-07-30 17:12:26 +00:00
** Inscription
2025-08-04 12:37:53 +07:00
Defines code in a scripting language to be run when the corresponding spell is executed.
May be defined statically in the weave or considered a reactive input.
2025-07-30 17:12:26 +00:00
** Scroll
Defines source code, its build dependencies and runtime environment.
Provides a default spell configuration.
2025-08-05 21:47:02 +07:00
Provides default upstream/downstream stitch decorators for outputs/inputs respectively.
2025-08-04 12:37:53 +07:00
Declares runtime compatibility (browser-only, non-browser, or universal).
2025-07-30 17:12:26 +00:00
** Shelf
2025-08-05 21:47:02 +07:00
Contains a collection of scrolls.
2025-08-04 12:37:53 +07:00
Provisions a shared runtime environment for spells based on these scrolls.
2025-07-30 17:12:26 +00:00
** Edition
2025-08-04 12:37:53 +07:00
Represents (a part of) the weave as a grimoire, a servitor, or a consistent collection of these.
** Grimoire
2025-08-05 21:47:02 +07:00
Presents a subweave as a program with human-facing interface.
2025-08-04 12:37:53 +07:00
Uses bridge spells to communicate with servitor-side ornaments within the same edition.
Has a dedicated interface ornament (entry point).
** Servitor
2025-08-05 21:47:02 +07:00
Presents a subweave as a local/remote daemon's/server's endpoints/methods.
2025-07-30 17:12:26 +00:00
** Loom
Provisions tools for interactive or programmatic weaving.