PASO: A Web-Based Parser for Solidity Language Analysis

Giuseppe Antonio Pierro, R. Tonelli
{"title":"PASO: A Web-Based Parser for Solidity Language Analysis","authors":"Giuseppe Antonio Pierro, R. Tonelli","doi":"10.1109/IWBOSE50093.2020.9050263","DOIUrl":null,"url":null,"abstract":"Smart Contracts are computer programs which implement and execute transactions and manage business logic on a decentralized public ledger. Smart Contracts can be written in different programming languages and for different Blockchains. Currently the most used language for Smart Contracts is Solidity and the most used platform is the Ethereum Blockchain. Assessing the quality of Smart Contract programs is an important task required to professional programmers, especially when a programming language has so powerful economic implications. It is therefore crucial to provide professional programmers with tools for the evaluation of Smart Contracts. In software engineering, software metrics has been defined and used to measure software quality and, more in general, to qualify software under the principle “You Can't Manage What You Don't Measure”. For the Solidity programming language there are only a few Standalone Applications to analyse the Smart Contract metrics. The aim of this paper is first to build a tool for the practical computation of a specific set of Solidity source code metrics, so that the set will be extensible in the future according also to Solidity compiler evolution, second to fully enable a web-based usage of the tool to access the metrics of the Solidity programming language. The tool, PASO, differently from the existing application, is able to give software metrics values for Smart Contracts written in Solidity programming language just using a web browser.","PeriodicalId":198392,"journal":{"name":"2020 IEEE International Workshop on Blockchain Oriented Software Engineering (IWBOSE)","volume":"650 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"7","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2020 IEEE International Workshop on Blockchain Oriented Software Engineering (IWBOSE)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IWBOSE50093.2020.9050263","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 7

Abstract

Smart Contracts are computer programs which implement and execute transactions and manage business logic on a decentralized public ledger. Smart Contracts can be written in different programming languages and for different Blockchains. Currently the most used language for Smart Contracts is Solidity and the most used platform is the Ethereum Blockchain. Assessing the quality of Smart Contract programs is an important task required to professional programmers, especially when a programming language has so powerful economic implications. It is therefore crucial to provide professional programmers with tools for the evaluation of Smart Contracts. In software engineering, software metrics has been defined and used to measure software quality and, more in general, to qualify software under the principle “You Can't Manage What You Don't Measure”. For the Solidity programming language there are only a few Standalone Applications to analyse the Smart Contract metrics. The aim of this paper is first to build a tool for the practical computation of a specific set of Solidity source code metrics, so that the set will be extensible in the future according also to Solidity compiler evolution, second to fully enable a web-based usage of the tool to access the metrics of the Solidity programming language. The tool, PASO, differently from the existing application, is able to give software metrics values for Smart Contracts written in Solidity programming language just using a web browser.
PASO:基于web的语言分析解析器
智能合约是在分散的公共分类账上实现和执行交易并管理业务逻辑的计算机程序。智能合约可以用不同的编程语言和不同的区块链编写。目前智能合约使用最多的语言是Solidity,使用最多的平台是以太坊区块链。评估智能合约程序的质量对专业程序员来说是一项重要的任务,尤其是当一种编程语言具有如此强大的经济影响时。因此,为专业程序员提供评估智能合约的工具至关重要。在软件工程中,软件度量标准已经被定义并用于度量软件质量,更一般地说,在“你无法管理你不度量的东西”的原则下对软件进行鉴定。对于Solidity编程语言,只有几个独立的应用程序来分析智能合约指标。本文的目的首先是构建一个工具,用于实际计算特定的Solidity源代码度量,以便该集合将在未来根据Solidity编译器的发展进行扩展,其次是完全启用基于web的工具使用来访问Solidity编程语言的度量。与现有应用程序不同的是,PASO工具能够通过web浏览器为用Solidity编程语言编写的智能合约提供软件度量值。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信