定义可扩展语言的语法

L. Reis, V. O. D. Iorio, R. Bigonha
{"title":"定义可扩展语言的语法","authors":"L. Reis, V. O. D. Iorio, R. Bigonha","doi":"10.1145/2554850.2554898","DOIUrl":null,"url":null,"abstract":"The interest in Domain-Specific Languages (DSLs) has been increasing as a way of improving the productivity and read-ability of software. Some modern extensible languages offer facilities for building modular specifications for extensions, so they may be considered an interesting option for implementing domain specific languages. But there are at least two disadvantages that currently affect most extensible languages. First, their syntax is usually defined informally, because there is a lack of formal tools for the definition of extensible languages. Second, extensible languages are usually implemented in an ad-hoc and inefficient way. In this paper, we show how the syntax of extensible languages like Fortress and SugarJ can be formally defined using a novel model designated Adaptable Parsing Expression Grammars (APEG). The formal definitions of the languages help clarifying many aspects of their syntax. We also use an interpreter of the APEG model to parse programs of the languages, showing that the model can be used in practice to implement parsers for extensible languages.","PeriodicalId":285655,"journal":{"name":"Proceedings of the 29th Annual ACM Symposium on Applied Computing","volume":"40 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":"{\"title\":\"Defining the syntax of extensible languages\",\"authors\":\"L. Reis, V. O. D. Iorio, R. Bigonha\",\"doi\":\"10.1145/2554850.2554898\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The interest in Domain-Specific Languages (DSLs) has been increasing as a way of improving the productivity and read-ability of software. Some modern extensible languages offer facilities for building modular specifications for extensions, so they may be considered an interesting option for implementing domain specific languages. But there are at least two disadvantages that currently affect most extensible languages. First, their syntax is usually defined informally, because there is a lack of formal tools for the definition of extensible languages. Second, extensible languages are usually implemented in an ad-hoc and inefficient way. In this paper, we show how the syntax of extensible languages like Fortress and SugarJ can be formally defined using a novel model designated Adaptable Parsing Expression Grammars (APEG). The formal definitions of the languages help clarifying many aspects of their syntax. We also use an interpreter of the APEG model to parse programs of the languages, showing that the model can be used in practice to implement parsers for extensible languages.\",\"PeriodicalId\":285655,\"journal\":{\"name\":\"Proceedings of the 29th Annual ACM Symposium on Applied Computing\",\"volume\":\"40 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2014-03-24\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"3\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the 29th Annual ACM Symposium on Applied Computing\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/2554850.2554898\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 29th Annual ACM Symposium on Applied Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2554850.2554898","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3

摘要

领域特定语言(dsl)作为提高软件生产力和可读性的一种方式,其兴趣一直在增加。一些现代的可扩展语言提供了为扩展构建模块化规范的工具,因此它们可能被认为是实现领域特定语言的有趣选择。但是目前影响大多数可扩展语言的至少有两个缺点。首先,它们的语法通常是非正式定义的,因为缺乏用于定义可扩展语言的正式工具。其次,可扩展语言通常以一种特别的、低效的方式实现。在本文中,我们展示了如何使用一种称为适应性解析表达式语法(APEG)的新模型正式定义可扩展语言(如Fortress和SugarJ)的语法。语言的正式定义有助于澄清其语法的许多方面。我们还使用APEG模型的解释器来解析语言的程序,表明该模型可以在实践中用于实现可扩展语言的解析器。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Defining the syntax of extensible languages
The interest in Domain-Specific Languages (DSLs) has been increasing as a way of improving the productivity and read-ability of software. Some modern extensible languages offer facilities for building modular specifications for extensions, so they may be considered an interesting option for implementing domain specific languages. But there are at least two disadvantages that currently affect most extensible languages. First, their syntax is usually defined informally, because there is a lack of formal tools for the definition of extensible languages. Second, extensible languages are usually implemented in an ad-hoc and inefficient way. In this paper, we show how the syntax of extensible languages like Fortress and SugarJ can be formally defined using a novel model designated Adaptable Parsing Expression Grammars (APEG). The formal definitions of the languages help clarifying many aspects of their syntax. We also use an interpreter of the APEG model to parse programs of the languages, showing that the model can be used in practice to implement parsers for extensible languages.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
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学术官方微信