Я смотрю на возможность построения системы, в которой, когда запрос попадает на сервер, мы превращаем запрос в код c ++, компилируем его как разделяемый объект и запускаем код.
Время компиляции само по себе должно быть небольшим, чтобы оно того стоило. Мой код может генерировать соответствующий код C ++, но если мне нужно записать его на диск, а затем вызвать gcc, чтобы получить файл .so, а затем запустить его, это, похоже, не стоит.
Существуют ли способы, с помощью которых я могу получить небольшой фрагмент кода для компиляции и быстрой готовности к общедоступному объекту (может иметь значительное время запуска до поступления запросов). Если такой инструмент имеет разрешительную лицензию, это еще один плюс.
Изменить: У меня очень строгий язык запросов, который пользователи могут использовать, поэтому угроза безопасности не имеет значения. Мой собственный код переводит запрос в код C ++. Ответ, в котором упоминается лязг, идеален.
Запуск Clang в режиме JIT должен обеспечить необходимую скорость, и пример можно найти Вот, безопасность с другой стороны это нечто другое …
Ch также был добавлен JIT, и, рассматривая его как интерпретатор, он мог бы обеспечить более легкую изолированную среду / контролируемую среду.
В дополнение к ответу Necrolis, есть также специализированный парсер C ++ Цепляться. Может пригодиться.