Создание предметно-ориентированного языка, а затем скомпилирование его в код для каждого целевого языка, который вы используете, будет лучшим решением (и наиболее элегантным).
Нетрудно создать DSL - засушить его во что-нибудь (например, внутри Ruby, так как это прямо сейчас "in", или на другом языке, таком как LISP / Haskell ...), или создать грамматику с нуля (используйте Antlr?). Кажется, что проект большой, тогда этот путь стоит вашего времени.