External DSL vs General Purpose Language
Developers should learn and use External DSLs when building systems that require domain-specific abstractions, improved productivity for non-programmers, or strict separation of concerns between domain logic and general-purpose code meets developers should learn a general-purpose language as a foundational skill because it offers flexibility and broad applicability in software development, making it essential for building a wide range of applications from scratch. Here's our take.
External DSL
Developers should learn and use External DSLs when building systems that require domain-specific abstractions, improved productivity for non-programmers, or strict separation of concerns between domain logic and general-purpose code
External DSL
Nice PickDevelopers should learn and use External DSLs when building systems that require domain-specific abstractions, improved productivity for non-programmers, or strict separation of concerns between domain logic and general-purpose code
Pros
- +They are particularly valuable in fields like finance (for trading rules), healthcare (for clinical protocols), or configuration management (like Ansible YAML), where specialized syntax enhances clarity and reduces errors
- +Related to: internal-dsl, domain-driven-design
Cons
- -Specific tradeoffs depend on your use case
General Purpose Language
Developers should learn a general-purpose language as a foundational skill because it offers flexibility and broad applicability in software development, making it essential for building a wide range of applications from scratch
Pros
- +It is particularly useful for projects that require cross-platform compatibility, such as desktop software, mobile apps, or server-side systems, and serves as a stepping stone to mastering specialized languages or frameworks
- +Related to: python, java
Cons
- -Specific tradeoffs depend on your use case
The Verdict
These tools serve different purposes. External DSL is a concept while General Purpose Language is a language. We picked External DSL based on overall popularity, but your choice depends on what you're building.
Based on overall popularity. External DSL is more widely used, but General Purpose Language excels in its own space.
Disagree with our pick? nice@nicepick.dev