Exposed in BlockChainJam 2019, at Yasuda hall, the University of Tokyo. This talk focuses on the on-chain governance of Tezos which permits it evolve quickly.
Plebeia, a new storage for Tezos blockchain stateJun Furuse
Plebeia is a new storage for Tezos blockchain state based on a binary Merkle Patricia trie. It provides compact Merkle proofs and an append-only storage design. Plebeia trees can be updated functionally using a zipper-based cursor and stored in a fixed-size cell format on disk for efficient reads and writes. Integration of Plebeia into the Tezos node is ongoing to validate its correctness and improve storage and processing performance over the current context system.
More Related Content
Similar to Tezso and on-chain governanace: towards "Kyoto amendment"
Plebeia, a new storage for Tezos blockchain stateJun Furuse
Plebeia is a new storage for Tezos blockchain state based on a binary Merkle Patricia trie. It provides compact Merkle proofs and an append-only storage design. Plebeia trees can be updated functionally using a zipper-based cursor and stored in a fixed-size cell format on disk for efficient reads and writes. Integration of Plebeia into the Tezos node is ongoing to validate its correctness and improve storage and processing performance over the current context system.
This document describes SCaml, a compiler that takes OCaml code as input and outputs Michelson code for smart contracts. SCaml is a strict subset of OCaml that removes features like recursion, polymorphism, and mutability to target smart contract usage. It reuses the OCaml compiler libraries and compiles OCaml's typed AST directly to Michelson. SCaml aims to allow OCaml programmers to easily write smart contracts and leverage existing OCaml tools. It discusses SCaml's features like entry points, data types, and exceptions as well as its ecosystem integration and possibilities for simulation and interoperability with OCaml.
Presented at JCBA seminar on 2019-12-18
I apologize in advance if something technically wrong or incomplete exist in the slides. The main point is that PoS consists of many technical aspects and each PoS do different design choises. Understading one PoS impelmentation never means that you understand the others.
- SCaml is a compiler that takes OCaml code as input and outputs Michelson smart contract code. It is a strict subset of OCaml without many features like recursion, polymorphism, or mutability in order to keep contracts secure and small.
- The compiler reuses OCaml's parser and type checker and compiles the typed AST directly to Michelson. It supports all Michelson opcodes except CREATE_CONTRACT and does some optimizations.
- Being a strict subset of OCaml means programmers can use familiar OCaml patterns and many existing OCaml tools while targeting smart contracts on Tezos. Future work may include pattern matching and user-defined types while keeping the compiler small.
Blockchain and Smart Contract SimulationJun Furuse
Blockchain systems require high levels of safety due to financial incentives. Tezos focuses on formal verification methods to mathematically prove software properties. Simulations are also important for evaluating aspects that cannot be fully proven, such as consensus algorithms, smart contract behavior under different conditions, and determining appropriate gas costs for smart contract opcodes based on runtime performance.
Blockchain and Formal verification (English)Jun Furuse
The document provides an overview of blockchain technology, including its history and key components. It discusses the evolution of currencies from bartering to modern fiat money. It then explains the technical aspects of blockchain, including how it uses a distributed ledger database, consensus algorithms to resolve conflicts, and smart contracts. Specific blockchain protocols like Bitcoin and Ethereum are examined. The document also covers proof of stake as an alternative to proof of work used in blockchains like Tezos to address issues like energy inefficiency and centralization of mining power.
Overview of blockchain and formal verification efforts over it. In Japanese.
ブロックチェーン技術とその安全性を保証する形式検証の取り組みについてちょっとだけ紹介。コンピュータサイエンスの学部生から院生(ただしこの分野のプロを覗く)が対象。
- Tezos is a next generation blockchain platform that uses a delegated proof-of-stake consensus mechanism and on-chain governance to allow stakeholders to propose and vote on upgrades to the protocol.
- Recent developments include Nomadic Labs taking a leading role in core development, proposals for the first protocol amendments to increase gas limits and reduce staking requirements, improvements to reduce storage usage, and the launch of the Tezos Stack Exchange beta site.
- Further improvements to areas like storage, consensus algorithms, privacy, smart contract languages, and tools are underway from both the core developers and wider community.
Challenges in blockchain certification (Nov 19, 2018 for TPP2018)Jun Furuse
Blockchains are fault-tolerant open distributed databases with stored procedures. The fact they are permissionless and need an internal currency to achieve data replication makes them targets of choice for hackers. Formal verification techniques like theorem proving are required to achieve financial-grade security in blockchains. This presentation shows the challenges in certifying blockchain components.
Uploaded behalf of Diego.
The document introduces OCaml×Scope, a new API search engine for OCaml similar to Hoogle for Haskell. It summarizes the limitations of existing OCaml API search tools and describes how OCaml×Scope addresses these by scraping documentation from cmt/cmti files of over 100 OPAM packages. Future work includes improving search results grouping, adding a better web GUI, and integrating remote querying. The tool provides name and type-based searching of OCaml APIs to help programmers.
The document provides advice for feeling overwhelmed as a newcomer to an OCaml project, recommending using the OCamlSpotter tool to more easily search and navigate code by leveraging metadata from the compiler rather than manual searching or grep. It describes how OCamlSpotter works and can be integrated with editors, and argues that it is a proven solution for locating symbols in OCaml code.