When creating a new language, either a DSL (Domain Specific Language) or a more general purpose one, it can be a great help to build on top of an existing language or VM. This can give you "for free" many of the properties and existing libraries of that system. However, it can also limit you to the properties of the base system thereby restricting your language. This talk will describe building languages on the Erlang VM and how the features of Erlang affect the properties of these languages. It will also look at some of the tools available for Erlang for implementing new languages.