liveBook · Manning

DSL-aspecific code

As explained in Building User-Friendly DSLs

Code needed by a software component that is neither specific to domain-specific languages nor generic DSL implementation framework code.

DSL-aspecific code is the software-component code that is neither tied to a DSL’s key aspects nor part of a reusable DSL implementation framework. It is usually boilerplate needed for a working component. section 10.2

Use the category to:

  • Separate DSL-specific changes from unrelated component code when estimating implementation impact. section 10.2
  • Design a test strategy that concentrates on DSL-specific behavior rather than boilerplate. section 10.2
  • Distinguish ordinary component code from DSL-generic infrastructure and DSL-specific features. section 10.2
Figure 10.4 Categorizing code into three kinds, and illustrating their coupling (with arrows) to the generic low-level AST structure
figure

Use the coupling diagram to identify DSL-aspecific code alongside DSL-specific and DSL-generic code, and to see their relationships with the generic AST structure. section 10.2

How Building User-Friendly DSLs covers it

How deep it goes
Defines the category, identifies boilerplate as its usual form, and stops short of enumerating a complete component inventory.
Examples
Uses boilerplate in working software components as the principal example and contrasts it with React and AST-related code.
What you can do after
Evaluate component code by classifying it for DSL-change impact and test-strategy planning.
How it connects
Connects DSL-specific code, DSL-generic code, coupling, AST structure, and test strategy.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Building User-Friendly DSLs. The section links point to the parts of the book it draws on.