The thing about DSLs are that they contain nothing more than is required for the domain given. A good DSL can be understood in a minute or two, and will naturally point you in the direction of the answer. Even when you use JS you have to engage with a sort of DSL: the interface, the interface has to be explained and understood. This is a barrier that pretty much cannot be eliminated, some understanding has to be made.
A true DSL lowers this barrier by just being an interface without all the extra stuff required to be a valid JS library. But true DSLs have some draw backs. They have to …