Что нужно для создания нового языка программирования, какие средства и какие языки программирование нужны будут участвовать при создания нового языка?
Компилятор можно написать на любом языке. Код будет состоять из нескольких модулей. 
1. Лексер - преобразует исходный текст в последовательность токенов. 
a = b + 1; превратит в что-то типа {variable("a"), assign, variable("b"), add, number("1")}
2. Парсер строится на основе грамматики. Преобразует последовательность токенов в дерево..       assign
      /          \
var('a')       add
               /     \
          var('b')   number(1)
3. Далее обходя полученное дерево генерируем код
Различные методы расписаны в dragonbook.
www.cyberforum.ru/cpp-beginners/thread41218.html
вот интересная тема