Portable Smart Contracts

2018-11-21T08:10:47+00:00September 28th, 2018|Categories: consensus, dag, JSONata, programming|Tags: , , , , |

Why Smart ContractsSmart Contacts are the force that mediates the blockchain. They are the entry point to the blockchain — how to get value and processes on to a blockchain.What processes should be transferred to a blockchain? Certainly any process that needs accountability, trust or agreement between parties, or transfers value, or creates value. Note that this includes many processes that haven't been digitized [...]

Auction Contract – Part 1

2018-11-21T08:08:51+00:00September 23rd, 2018|Categories: example, JSONata, programming|Tags: , , |

Overview In the next few posts, we will build a sample auction contract. The auction contract is simple, but sufficient for many use cases. We'll start out with the template for the contract. The template contains the reducers, which are the named bits of contract code that get executed when actions are sent to the contract. For the auction contract, there are 3 reducers: [...]

The Rekoner Computational DAG

2018-09-28T05:02:43+00:00August 29th, 2018|Categories: coin, consensus, dag, intro, programming|Tags: , , , |

The Computational DAG (directed acyclic graph) directly mimics the programming model, using several innovations to create an unforgeable, persistent, and verifiable history of Contract execution. The DAG consists of Contracts, Actions, States, Inputs, Outputs, Signatures, and Coins. Object Keys and Object Hashes Object keys and object hashes form a unique linking structure in the DAG. Each object has a unique key. Some of the [...]

The Rekoner Programming Model

2018-09-26T03:36:34+00:00August 29th, 2018|Categories: coin, dag, intro, programming|Tags: , , , , , , , |

The Rekoner uses a simple, elegant, and powerful programming model. All objects in the Rekoner are represented as JSON documents, and the JSONata query and transformation language (restricted, see below) is used for data transformations. First, some terms: Ledgers are key pairs and represent accounts. Templates are a set of Reducers, which are named bits of JSONata code that execute the contract logic. Coins [...]

Introducing The Rekoner

2018-11-21T08:12:44+00:00August 29th, 2018|Categories: coin, consensus, dag, intro, programming|Tags: , , , |

Smart Contract platforms (like Ethereum) offer a powerful new way to build decentralized blockchain based applications. But, there are several major problems that exist which prevent wide adoption of these systems: The programming models are complex and difficult to reason about. It's difficult (or impossible) to verify that programs are correct. It's very costly to develop and run Smart Contracts on existing systems. The [...]