Smart Contract Languages: a comparative analysis
Abstract
Smart contracts have played a pivotal role in the evolution of blockchains and Decentralized Applications (DApps). As DApps continue to gain widespread adoption, multiple smart contract languages have been and are being made available to developers, each with its distinctive features, strengths, and weaknesses. In this paper, we examine the smart contract languages used in major blockchain platforms, with the goal of providing a comprehensive assessment of their main properties. Our analysis targets the programming languages rather than the underlying architecture: as a result, while we do consider the interplay between language design and blockchain model, our main focus remains on language-specific features such as usability, programming style, safety and security. To conduct our assessment, we propose an original benchmark which encompasses a wide, yet manageable, spectrum of key use cases that cut across all the smart contract languages under examination.
Cite
@article{arxiv.2404.04129,
title = {Smart Contract Languages: a comparative analysis},
author = {Massimo Bartoletti and Lorenzo Benetollo and Michele Bugliesi and Silvia Crafa and Giacomo Dal Sasso and Roberto Pettinau and Andrea Pinna and Mattia Piras and Sabina Rossi and Stefano Salis and Alvise Spanò and Viacheslav Tkachenko and Roberto Tonelli and Roberto Zunino},
journal= {arXiv preprint arXiv:2404.04129},
year = {2026}
}