Smalltalk is even better.  Advanced Smalltalk <i>is</i>  morphing Smalltalk into a DSL. You can even write your own domain specific if-then-else analogues, and it looks 1st class like the Standard conditional logic.  Yet the implementation is just a plain vanilla method.