3 ms·
Ah, but internal DSLs do use the same constructs and semantics that the language provides, unless you're talking about macros. And we aren't talking about macr
by bad_user 13y ago
Ah, but internal DSLs do use the same constructs and semantics that the language provides, unless you're talking about macros.
And we aren't talking about macros here, but about monads (a quite reusable design pattern), possibly in combination with the do-notation from Haskell, or for-comprehensions from Scala, or LINQ from .NET ... basically a simple and standardized syntactic sugar to make operations on monads more pleasant to read, but not really required.
A monad is basically a container with certain functions that can operate on it that have certain properties. That's not a DSL. Those are just function calls on a freaking container implementing a design pattern.
- redbad 13y agoI guess what you call an "internal DSL" I call an API.