论文标题
为纯嵌入式DSL的非编程用户定制主机IDE:一个案例研究
Customizing Host IDE for Non-programming Users of Pure Embedded DSLs: A Case Study
论文作者
论文摘要
纯嵌入作为特定于领域的语言(DSL)的实施策略,从低实施成本中受益。另一方面,它引入了不希望的句法噪声,这阻碍了非编程领域专家的参与。因此,纯嵌入式DSL通常不用于非编程器。在这项工作中,我们试图通过实验宿主IDE(综合开发环境)的廉价定制来挑战这种状态,以减少句法噪声的负面影响。我们提出了基于标准IDE功能(例如文件模板,代码折叠等)的几种技术和建议,旨在减少句法噪声并通常通过纯嵌入式DSL来改善用户体验。这些技术是使用Netbeans IDE案例研究提出的。提出的技术的目的是通过纯嵌入式DSL来改善用户体验,重点是参与非编程域专家(或一般非编程者)。使用对照实验评估了所提出的技术。该实验使用Ruby和非修饰的红宝石IDE与使用Java和Netbeans IDE进行比较了一组,从而使用了java和Netbeans IDE使用所提出的技术。实验结果表明,即使是廉价的主机自定义也可以显着减轻句法噪声引起的问题:Java及其不灵活的语法的性能比Ruby和Ruby具有简洁的语法。
Pure embedding as an implementation strategy of domain-specific languages (DSLs) benefits from low implementation costs. On the other hand, it introduces undesired syntactic noise that impedes involvement of non-programming domain experts. Due to this, pure embedded DSLs are generally not intended for, nor used by, non-programmers. In this work, we try to challenge this state by experimenting with inexpensive customizations of the host IDE (Integrated Development Environment) to reduce the negative impact of syntactic noise. We present several techniques and recommendations based on standard IDE features (e.g., file templates, code folding, etc.) that aim to reduce syntactic noise and generally improve the user experience with pure embedded DSLs. The techniques are presented using a NetBeans IDE case study. The goal of the proposed techniques is to improve the user experience with pure embedded DSLs with a focus on the involvement of non-programming domain experts (or non-programmers in general). The proposed techniques were evaluated using a controlled experiment. The experiment compared a group using Ruby and non-modified RubyMine IDE versus a group using Java and NetBeans IDE customized to use the proposed techniques. Experiment results indicate that even inexpensive host IDE customizations can significantly alleviate issues caused by the syntactic noise: Java with its inflexible syntax performed better than Ruby with its concise syntax.