Unveiling the Essential Tech Stack
Essential is building in the open! Discover the Pint programming language, pre-alpha devnet, and comprehensive developer documentation.
We’re excited to unveil the core components of Essential’s tech stack, including an early version of Essential—the first declarative blockchain—and Pint—a constraint-based language for programmable intents.
This release showcases our ongoing development work and marks the first time developers can build and test declarative blockchain applications, serving as a major step toward an ecosystem of truly scalable applications that optimize for the best user outcomes.
By building in the open and shipping early and often, we aim to demonstrate the value of declarative architectures and incorporate community feedback alongside our roadmap.
What's In The Release
- Pint Language - A constraint-based programming language designed for developing declarative blockchain applications.
- Pre-Alpha Devnet - A persistent devnet for early builders on Essential to permissionlessly deploy and test declarative applications.
- Developer Documentation - Including the Essential specs, Pint documentation, and a quick-start guide.
Understanding Essential's Declarative Model
Essential is the first declarative blockchain. At its core, the declarative approach involves reframing interactions in terms of outcomes, rather than instructions. Learn more about declarative vs. imperative approaches.
Key Concepts
- Intents - Users interact with the chain via signed user data (i.e. intents). This provides initial constraints on the parts of the solution the user wishes to fix in advance (for example, the amount of tokens to swap, or the token address itself). Any solution must contain these fixed values to be considered valid.
- Applications - Like user data, applications (i.e. smart contracts) on Essential also take the form of constraints on state. However, they are also able to constrain state they don’t own, provided the owner of that state authorizes it. Contracts are organized into predicates, one of which must be satisfied in order for that contract's state to be updated.
- Solutions - Solutions can be thought of as yet further constraints on state, this time to the point where all relevant parameters are constrained to exact values. They take the form of a set of proposed state mutations which satisfy the user’s intent, as well the predicates of any contract whose state they touch. Solutions are bundled together to form blocks.
Declarative Blockchain
Leveraging constraints. Because blockchain applications are all about state transitions, constraints allow you to restrict the ways in which the state is allowed to change. As a result, you do not have to explicitly express how to change the state, but only what state changes are allowed. On Essential, constraints are expressed in the Pint language.
Executionless model. This constraint-based model enables state to be updated without the need for execution. Instead of executing transactions to compute a new state, declarative blockchains specify state updates directly in a block, which then must pass relevant predefined constraint checks in order to be valid. This model ensures that the blockchain remains lightweight and scalable, as constraint verification is much less computationally intensive than imperative execution.
But if there's no execution, how are state updates created? Technically, anyone can directly propose state updates to the network. However in most cases, this role will be fulfilled by solvers—specialized entities who compete to discover and propose the most optimal solutions to user-submitted intents.
The shift from an imperative to a declarative model addresses many UX issues inherent in transaction-based systems. Learn more about the what, why, and how of declarative blockchains here:
Getting Started with Essential
To start building on Essential, visit the docs for a step by step guide on how to develop applications with Pint and deploy them to the pre-alpha devnet.
Our Release Philosophy
Building an entirely new blockchain architecture requires a long-term outlook, continuous iteration, and most importantly, buy-in from an enthusiastic community of builders and users.
Our approach is to ship early and often, gradually rolling out additional features and functionalities while bringing our community with us along the way. This strategy will help us incorporate valuable feedback as we ship iteratively, ensuring we build a robust and sustainable solution that meets the needs of core stakeholders.
We believe that declarative blockchains are the future of web3. Join us on our journey.
Sign up to stay updated 👇