Pfister, Remo and Thurairatnam, Keerthikan (2018) Improving the Bazo Blockchain. Student Research Project thesis, HSR Hochschule für Technik Rapperswil.
HS 2018 2019-SA-EP-Pfister-THURAIRATNAM-Improving the Bazo Blockchain.pdf - Supplemental Material
Download (902kB) | Preview
Abstract
Introduction:
The study work focuses on designing a smart contract language (named "Lazo") for the Bazo blockchain. The Bazo blockchain is a research blockchain to test different mechanisms and algorithms. In the current version, a Proof of Stake consensus algorithm and a virtual machine to execute Bazo intermediate language(opcodes) are integrated. However, writing smart contracts in Bazo opcodes is time
consuming and error-prone. The goal of this study work is to design a high-level language which is easier to read and write smart contracts.
Procedure / Result:
Before designing Lazo, 24 existing smart contract languages are collected and roughly analyzed to identify the key characteristics of a language for the blockchain. Thereafter, three popular and well elaborated languages, namely Solidity, Vyper and Scilla, were analyzed in great detail. Their supported features, syntax and contract examples were also documented. With the acquired knowledge about smart contracts, Lazo language was designed in an agile manner.
Result:
As a result, Lazo is designed to be a statically typed, imperative and non-turing complete programming language. All language features are documented with illustrative code snippets. The Lazo grammar is also written in ANTLR and
verified with Java. Furthermore, contract examples from Solidity are translated to Lazo in order to prove that the real-world use cases can be programmed with Lazo
as well.
In a follow-up thesis, a compiler could be developed to compile Lazo programs into Bazo virtual machine instructions.
Item Type: | Thesis (Student Research Project) |
---|---|
Subjects: | Topics > Software > Optimization Topics > Internet Technologies and Applications > Distributed Computing Area of Application > Banking & Finance Technologies > Programming Languages Technologies > Virtualization |
Divisions: | Bachelor of Science FHO in Informatik > Student Research Project |
Depositing User: | OST Deposit User |
Contributors: | Contribution Name Email Thesis advisor Bocek, Thomas UNSPECIFIED |
Date Deposited: | 26 Mar 2019 06:46 |
Last Modified: | 26 Mar 2019 06:46 |
URI: | https://eprints.ost.ch/id/eprint/736 |