What is NockApp?

Rollups to connect your app to Internet capital.

The NockApp framework is a general-purpose platform which is used with Nockchain to facilitate application rollups. The first NockApps that most users will encounter are Nockchain itself, nockchain, and the associated wallet, nockchain-wallet.

Every NockApp program is a program specified in Nock ISA (written in Hoon or Jock) that communicates with other NockApps locally or remotely, including Nockchain and its state. A Nock ISA program is formally provable, and the NockApp framework allows for selectively efficient execution by treating the Nock ISA behavior as the behavior specification.

From a programming perspective, a NockApp consists of a formal Nock ISA specification of behavior ("kernel") scaffolded by a Rust input/output driver ("wrapper"). This allows NockApps to utilize the proven formal characteristics of the Nock instruction set and still provide fast execution, onchain or offchain.

What is Nock ISA?

NockApp interactions take place through a well-defined interface to +peek and +poke the program state as a Nock ISA noun. NockApps communicate with each other using gRPC, which allows for local and remote discoverability and interaction.

NockApps are state machines and retain their state from last execution (unless reset). A NockApp durably persists its Nock ISA program’s state: no need to worry about databases, files, object-relational models, or serialization for persistence. Developers use the proven formal characteristics of the Nock ISA together with NockApp's fast commoditized execution for zero-knowledge proofs to produce novel and secure blockchain applications.

Last updated