earticle

논문검색

Verification of Configuration Files using Specially Designed Domain-Specific Language

초록

영어

This paper presents a new domain-specific language (DSL) and its interpreter. The purpose of the language is to be a tool for software developers and administrators that allows them to easily specify how configuration files in INI format should look like and what rules should their contents comply with. The interpreter of the language then takes a specification of a configuration file written in the DSL and verifies whether configuration files given as an input match the specification. The requirement for the language emerged at CERN (European Organization for Nuclear Research). The reason is that CERN, one of the biggest research organizations in the world, heavily uses SCADA (Supervisory Control and Data Acquisition) software for their industrial and scientific machines and SCADA developers needed to be able to verify that configuration files used by CERN's SCADA (WinCC Open Architecture) software are correct and comply with CERN standards. The newly designed DSL is primarily based on declarative paradigm and its core capabilities can be extended by JavaScript code injection. The language syntax is also a superset of INI files syntax so it feels familiar to people who want to use it for simple verification use cases. As for the interpreter, it uses Xtext-based parser to create abstract syntax trees and to integrate with the Eclipse Platform. The execution of the DSL code then uses a hybrid architecture which combines AST interpretation, translation of certain parts of AST into a JavaScript code and running JavaScript code on top of the Java Virtual Machine.

목차

Abstract
 1. Introduction
 2. Configuration Files
 3. Template Language Design
  3.1. Basic Concepts of the DSL
 4. Template Language Parser
  4.1. Xtext-based Barser
  4.2. Nashorn Engine Parser
 5. Template Language Interpreter
  5.1. AST Interpretation
  5.2. JavaScript Engine and JVM Execution
 6. Conclusions
 References

저자정보

  • Matěj Mareček Faculty of Information Technology, Brno University of Technology

참고문헌

자료제공 : 네이버학술정보

    함께 이용한 논문

      ※ 원문제공기관과의 협약기간이 종료되어 열람이 제한될 수 있습니다.

      0개의 논문이 장바구니에 담겼습니다.