В универе где я учился, один студент из прошлых потоков в качестве дипломной работы написал IDE работающую по похожему принципу: каждая программа хранилась в памяти как синтаксическое дерево, сохранялось на диск это дерево в виде XML. Формат программы был кастомный, не привязанный к какому-либо языку программирования, эта IDE являлась одновременно и редактором, и интерпретатором, но зато в редакторе можно было "переключать" язык программирования — как итог, одна и та же программа могла одним челком мыши превратиться из программы на C++ в программу на Java, Python, и т.д., при этом внутреннее представление программы никак не изменялось.
Естественно, проект был сугубо образовательный и о настоящей поддержке всех этих языков речь не идёт, это была просто имитация синтаксиса, а ввод/ввывод происходил через самописную прослойку в интерпретаторе, но этого было достаточно чтобы на нём обучали первокурсников алгоритмам, в том числе и ничего не подозревающего меня, который на тот момент был знаком только с Turbo Pascal.
Интересно, какую информацию о чём-либо вообще можно «нагуглить» в тик-токе.
Ну если документация пишется в оплачиваемое рабочее время, то тратят)
В универе где я учился, один студент из прошлых потоков в качестве дипломной работы написал IDE работающую по похожему принципу: каждая программа хранилась в памяти как синтаксическое дерево, сохранялось на диск это дерево в виде XML. Формат программы был кастомный, не привязанный к какому-либо языку программирования, эта IDE являлась одновременно и редактором, и интерпретатором, но зато в редакторе можно было "переключать" язык программирования — как итог, одна и та же программа могла одним челком мыши превратиться из программы на C++ в программу на Java, Python, и т.д., при этом внутреннее представление программы никак не изменялось.
Естественно, проект был сугубо образовательный и о настоящей поддержке всех этих языков речь не идёт, это была просто имитация синтаксиса, а ввод/ввывод происходил через самописную прослойку в интерпретаторе, но этого было достаточно чтобы на нём обучали первокурсников алгоритмам, в том числе и ничего не подозревающего меня, который на тот момент был знаком только с Turbo Pascal.