There are currently several useful tools for implementing custom languages.
You might want to check out Xtext in the Eclipse modeling package ( http://www.eclipse.org ) or MPS ( http://www.jetbrains.com/mps/ ), an IntelliJ toolkit language that is freely available.
Both allow you to create languages and provide tools for generating code from a source and tools for creating code.
They also create abstract syntax trees that can be directly processed, i.e. executed. Then you have a translator.
bison/yacc lexer, , , antlr. , .