Нам преподаватель сказал, что код изначально собирается на каком-то скриптовом языке (не помню, но начинается на S) переводится в VM, а потом уже в машинный код. Это так? Где можно об этом почитать, на вики не нашел.
UPD: препод сказал, что все это с помощью языка CIL
Врет ваш преподаватель. Чистые плюсы компилятся в ассембленные команды. Хотя вобщем можно найти компилятор, превращающий C++ во что нибудь поэкзотичнее
UPD: knzsoft.ru/cpp-bgr-ls1 вроде неплохая статейка по теме
Скорее всего вы не поняли преподавателя.
Сначала препроцессор раскрывает макросы, #include. Это текстовые преобразования.
Потом каждый cpp файл по отдельности компилируется в объектные файлы.
Потом линковщик собирает объектные файлы в исполняемый файл или библиотеку.
Одна из вариаций:
Сначала конвертит текст в лексемы, затем строит дерево разбора, потом это дерево перегоняет в псевдокод на пару с оптимизацией, перегоняет в машинный код на пару с оптимизацией.
Но вот уж никаких скриптовых языков и в помине нет и не будет.