A domain-specific language for automatic generation of checkers

Ryan Ignatius Hadiwijaya, M. M. Inggriani Liem
{"title":"A domain-specific language for automatic generation of checkers","authors":"Ryan Ignatius Hadiwijaya, M. M. Inggriani Liem","doi":"10.1109/ICODSE.2015.7436963","DOIUrl":null,"url":null,"abstract":"One of the important modules of a black-box automatic program grader is a \"checker\". In programming competition environment, a checker is a program written for the purpose to check the output of the contestant's program for a task that has many solutions. Usually, a checker is written manually as needed. In this paper, the idea of the output checker in the programming competition environment is extended to input checker and source code checker as a part of the automatic grader in our programming learning environment. Input checker validates the input coverage. The source code checker is used to validate a set of properties from a source code against the given coding specification. A Domain-Specific Language (DSL) grammar is designed and developed as a specification for the automatic generation of the output, input, and source code checkers. The DSL grammar and the checker generator tool set are used to evaluate source codes in our programming class. By writing the checkers specification in DSL, the specification is automatically documented and can be reused for similar properties.","PeriodicalId":374006,"journal":{"name":"2015 International Conference on Data and Software Engineering (ICoDSE)","volume":"13 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2015-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2015 International Conference on Data and Software Engineering (ICoDSE)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICODSE.2015.7436963","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3

Abstract

One of the important modules of a black-box automatic program grader is a "checker". In programming competition environment, a checker is a program written for the purpose to check the output of the contestant's program for a task that has many solutions. Usually, a checker is written manually as needed. In this paper, the idea of the output checker in the programming competition environment is extended to input checker and source code checker as a part of the automatic grader in our programming learning environment. Input checker validates the input coverage. The source code checker is used to validate a set of properties from a source code against the given coding specification. A Domain-Specific Language (DSL) grammar is designed and developed as a specification for the automatic generation of the output, input, and source code checkers. The DSL grammar and the checker generator tool set are used to evaluate source codes in our programming class. By writing the checkers specification in DSL, the specification is automatically documented and can be reused for similar properties.
用于自动生成检查器的特定于领域的语言
黑箱自动程序评分机的一个重要模块是“检查器”。在编程竞赛环境中,检查程序是为检查参赛者程序的输出结果而编写的程序,该任务有许多解决方案。通常,检查器是根据需要手动编写的。本文将编程竞赛环境中的输出检查器的思想扩展到编程学习环境中的输入检查器和源代码检查器,作为自动评分器的一部分。输入检查器验证输入覆盖率。源代码检查器用于根据给定的编码规范验证源代码中的一组属性。领域特定语言(Domain-Specific Language, DSL)语法被设计和开发为自动生成输出、输入和源代码检查器的规范。DSL语法和检查器生成器工具集用于计算编程类中的源代码。通过在DSL中编写检查器规范,该规范被自动记录下来,并且可以重用类似的属性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术官方微信