Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
As you saw in the earlier section, the primary tool support for designing DSLs comes in the form of DSL workbenches. But when you’re not using a workbench, how much support can you expect from the environment that you’re working with?
One obvious way of getting advanced tool support for writing DSLs is from your IDE. When you program in a general-purpose programming language using the support of an IDE, you get an editor that supports syntax highlighting, code completion, and many other editing features. Now imagine getting some of these features when you program using your DSL. Consider writing an internal DSL in Groovy for the financial brokerage system, where you want to highlight every currency code that the user enters. Or you want automatic code completion for some of the financial institutions supported by your system.