- Notifications
You must be signed in to change notification settings - Fork0
NockApp - a toolkit for building self-contained Nock state machines with Rust IO drivers
License
Native-Planet/nockapp
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
DEVELOPER ALPHA
NockApps are pure-functional state machines with automatic persistence and modular IO.
The NockApp framework provides two modules, Crown and Sword:
- Crown provides a minimal Rust interface to a Nock kernel.
- Sword is a modern Nock runtime that achieves durable execution.
To test compiling a Nock kernel using thechoo
command-line Hoon compiler, run the following commands:
cd choocargo run --release hoon/lib/kernel.hoon
Thecrown
library is the primary framework for building NockApps. It provides a simple interface to aKernel
: a Nock core which can make state transitions with effects (via thepoke()
method) and allow inspection of its state via thepeek()
method.
For compiling Hoon to Nock, we're also including a pre-release ofchoo
: a NockApp for the Hoon compiler.choo
can compile Hoon to Nock as a batch-mode command-line process, without the need to spin up an interactive Urbit ship. It is intended both for developer workflows and for CI.choo
is also our first example NockApp. More are coming!