TextX: A Python tool for Domain-Specific Languages implementation

作者:

Highlights:

摘要

TextX is a meta-language and a tool for building Domain-Specific Languages in Python. It’s built on top of the Arpeggio PEG parser and takes away the burden of converting parse trees to abstract representations from language designers.From a single grammar description, textX constructs Arpeggio parser and a meta-model in run-time. The meta-model contains all the information about the language and a set of Python classes inferred from grammar rules. The parser will parse programs/models written in the new language and construct Python object graph a.k.a. the model conforming to the meta-model.The textX tool has support for error reporting, debugging, and meta-model and model visualization. It is used in industrial environments and teaching Domain-Specific Languages course at the Faculty of Technical Sciences in Novi Sad.It is a free and open-source software available at GitHub under the MIT license.

论文关键词:Domain-Specific Language,Meta-model,Model,Model-Driven software development,Parser,Python

论文评审过程:Received 8 May 2016, Revised 8 October 2016, Accepted 28 October 2016, Available online 4 November 2016, Version of Record 18 November 2016.

论文官网地址:https://doi.org/10.1016/j.knosys.2016.10.023