Вы можете использовать Lua или Python. Lua более "легкий", чем питон. У него меньший объем памяти, чем у python, и, по нашему опыту, его было проще интегрировать (пробег людей по этому вопросу может отличаться). Он может поддерживать несколько скриптов, работающих одновременно. Lua, по крайней мере, поддерживает остановку / запуск потоков так, как вы хотите.
Boost.python - это хорошо, но по моему (ограниченному) опыту нам было трудно получить компиляцию для наших различных сред, и он был довольно тяжелым. Это имеет (на мой взгляд) недостаток, требующий Boost. Для некоторых это может не быть проблемой, но если вам не нужен Boost (или вы его не используете), вы вводите тонну кода, чтобы заставить Boost.python работать. YMMV.
Мы встроили Lua в приложения на нескольких платформах (win32, Xbox360 и PS3). Я верю, что это будет работать на x64. Предложение использовать Luabind хорошо. Мы решили написать собственный интерфейс между ними, и хотя он не слишком сложен, наличие этого связующего кода сэкономит вам много времени и, возможно, ухудшит ситуацию.
При любом решении отладка может быть проблемой. В настоящее время у нас нет хорошего решения для отладки скриптов Lua, встроенных в наше приложение. Поскольку мы не использовали python в наших приложениях, я не могу говорить о том, какие инструменты там могут быть доступны, но пару лет назад ситуация была примерно такой же - плохая отладка. Наличие сценариев для расширения функциональности - это хорошо, но ошибки в сценариях могут вызвать проблемы и их может быть трудно найти.
Сам по себе код Lua довольно сложен, если вам нужно внести в него изменения. Мы видели ошибки в самой базе кода Lua, которые было трудно отследить. Я подозреваю, что Boost :: Python может иметь похожие проблемы.
И для любого языка сценариев это не обязательно решение для "непрограммистов" для расширения функциональности. Может показаться, что это так, но, скорее всего, вы потратите немало времени на отладку скриптов или даже на Lua.
Все это говорит о том, что мы очень довольны Луа и поставили его в двух играх. В настоящее время у нас нет планов отойти от языка. В общем, мы нашли это лучше, чем другие альтернативы, которые были доступны пару лет назад. Python (и IronPython) - другие варианты, но, исходя из опыта, они кажутся более жесткими, чем Lua. Я хотел бы услышать о других событиях там.