Home // VALID 2019, The Eleventh International Conference on Advances in System Testing and Validation Lifecycle // View article


Towards an Operational Semantics for Solidity

Authors:
Marco Crosara
Gabriele Centurino
Vincenzo Arceri

Keywords: Programming Languages; Solidity; Semantics

Abstract:
Solidity is a multi-paradigm programming language used for writing smart contracts on the Ethereum blockchain and offers a wide range of features, such as Ethereum transfers between contracts or wallets of normal users. Its specification is not formally defined, the behaviours of Solidity constructs are informally provided by its documentation, leading to misunderstandings and buggy code. Without a formal semantics, reasoning about programs becomes extremely hard, if not impossible. In this paper, we provide a first-step towards a formal operational semantics for Solidity, defining a memory model for the language, able to capture its main features.

Pages: 1 to 6

Copyright: Copyright (c) IARIA, 2019

Publication date: November 24, 2019

Published in: conference

ISSN: 2308-4316

ISBN: 978-1-61208-755-9

Location: Valencia, Spain

Dates: from November 24, 2019 to November 28, 2019