Creating Domain-Specific Languages
Every domain has a language that helps practitioners communicate their thoughts easily. When a chef instructs a helper to sauté vegetables, both parties know what the term means. However, software solutions created for several domains using general-purpose, high-level programming languages such as C# or Java often quickly become difficult to maintain. Even only a few months later, the original authors of these solutions may find it difficult to remember how the code works so they can fix bugs.
Thankfully, you can avoid such problems by creating expressive and succinct internal APIs. These API sets ...