  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.
