Вот что я хочу сделать:
Я хочу иметь возможность делать это как с C
, так и с C++
, используя gcc
(и, в конечном итоге, Java
) в Unix- как системы (особенно Linux и Mac OS X). Идея состоит в том, чтобы в основном реализовать цикл чтения-оценки-печати для этих языков, который компилирует выражения и операторы по мере их ввода и использует их для изменения существующих структур данных (то, что делается все время в языках сценариев). Я пишу этот инструмент на python
, который генерирует файлы C
/ C++
, но это не должно иметь значения.
Я пытался сделать это с разделяемыми библиотеками, но узнал, что изменение разделяемых библиотек не влияет на программы, которые уже запущены. Я также пытался использовать общую память, но не смог найти способ загрузить функцию в кучу. Я также рассматривал возможность использования ассемблерного кода, но еще не пытался это сделать.
Я бы предпочел не использовать какие-либо другие компиляторы, кроме gcc
, если нет абсолютно никакой возможности сделать это в gcc
.
Если у кого-то есть идеи или кто знает, как это сделать, будем признательны за любую помощь.