Embedded DSLs have much lower learning overhead, since they are just embedded in the language you are already using. Eg in Haskell, they are still valid Haskell programs. So they eg inherit the control structures from the host language, and most of the tooling in your editor, like 'jump to definition' also still works.
See http://wiki.haskell.org/Embedded_domain_specific_language
Because the overheads are lower, the payoff doesn't have to be as high to make it worthwhile.
(However, there's still some overhead, otherwise you wouldn't really label them as embedded-DSLs.)