EDBT 2026 Demo / reviewers in the wild / expert
Anton Trunov
dblp:251/2063
· DBLP profile ↗
2ranked-venue papers
0as first author
1since 2021 · last 2022
0000-0003-0719-4744ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 2 · 1 since 2021
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
1 paper |
Programming languages and type systems · 50% Program verification · 50% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Distributed systems · 100% |
Topics — the 4 heaviest of 4, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems
language design |
0.4 | 1 | 2019 | Safer smart contract programming with Scilla · Proc. ACM Program. Lang. 2019 |
Program verification › automated verification
lightweight verification |
0.4 | 1 | 2019 | Safer smart contract programming with Scilla · Proc. ACM Program. Lang. 2019 |
Distributed systems
blockchain |
0.1 | 1 | 2019 | Safer smart contract programming with Scilla · Proc. ACM Program. Lang. 2019 |
Distributed systems › blockchain
smart contract |
0.1 | 1 | 2019 | Safer smart contract programming with Scilla · Proc. ACM Program. Lang. 2019 |
Methods — techniques the papers use, named apart from their topics
type soundness · 0.8system f · 0.8
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2022 | Random testing of a higher-order blockchain language (experience report)abstractWe describe our experience of using property-based testing---an approach for automatically generating random inputs to check executable program specifications---in a development of a higher-order smart contract language that powers a state-of-the-art blockchain with thousands of active daily users. We outline the process of integrating QuickChick---a framework for property-based testing built on top of the Coq proof assistant---into a real-world language implementation in OCaml. We discuss the challenges we have encountered when generating well-typed programs for a realistic higher-order smart contract language, which mixes purely functional and imperative computations and features runtime resource accounting. We describe the set of the language implementation properties that we tested, as well as the semantic harness required to enable their validation. The properties range from the standard type safety to the soundness of a control- and type-flow analysis used by the optimizing compiler. Finally, we present the list of bugs discovered and rediscovered with the help of QuickChick and discuss their severity and possible ramifications. Tram Hoang, Anton Trunov, Leonidas Lampropoulos, Ilya Sergey |
Proc. ACM Program. Lang. | 2 |
| 2019 | Safer smart contract programming with ScillaabstractThe rise of programmable open distributed consensus platforms based on the blockchain technology has aroused a lot of interest in replicated stateful computations, aka smart contracts. As blockchains are used predominantly in financial applications, smart contracts frequently manage millions of dollars worth of virtual coins. Since smart contracts cannot be updated once deployed, the ability to reason about their correctness becomes a critical task. Yet, the de facto implementation standard, pioneered by the Ethereum platform, dictates smart contracts to be deployed in a low-level language, which renders independent audit and formal verification of deployed code infeasible in practice. We report an ongoing experiment held with an industrial blockchain vendor on designing, evaluating, and deploying Scilla, a new programming language for safe smart contracts. Scilla is positioned as an intermediate-level language, suitable to serve as a compilation target and also as an independent programming framework. Taking System F as a foundational calculus, Scilla offers strong safety guarantees by means of type soundness. It provides a clean separation between pure computational, state-manipulating, and communication aspects of smart contracts, avoiding many known pitfalls due to execution in a byzantine environment. We describe the motivation, design principles, and semantics of Scilla, and we report on Scilla use cases provided by the developer community. Finally, we present a framework for lightweight verification of Scilla programs, and showcase it with two domain-specific analyses on a suite of real-world use cases. Ilya Sergey, Vaivaswatha Nagaraj, Jacob Johannsen, Amrit Kumar 0001, Anton Trunov, Ken Chan Guan Hao |
Proc. ACM Program. Lang. | 5 |