И Lua, и Python могут предоставлять упомянутые вами функции, поэтому выбор одной из них будет зависеть от других критериев.
Lua - более легкое решение, у него будет гораздо меньше места на диске и, вероятно, меньше накладных расходов на память, чем у Python. Для некоторых целей это может быть быстрее. Python имеет гораздо более богатую стандартную библиотеку, более зрелые сторонние библиотеки и более выразительный язык.
Оба они встроены в основные приложения. Python можно найти в Blender, OpenOffice и Civilization 4. Lua можно найти в World of Warcraft и Adobe Lightroom. Я бы порекомендовал изучить несколько руководств по каждому из них, а также средства, доступные для встраивания их в ваше приложение, и просто выбрать тот, который лучше всего подходит вашему мозгу.
Как правило, Lua - лучший выбор для встраивания в другой проект. Python лучше в качестве самостоятельной платформы, поскольку поддержка библиотек гораздо шире. Подробнее см. в Lua против Python.
Лично я очень часто использую оба языка в зависимости от конкретной работы. Я всегда использую Lua для встраивания в приложения на C/C++ или для создания сценариев, которые импортируются из общих библиотек C/C++ (т.е. DLL). Python всегда является моим первым выбором для самостоятельных задач, которые не требуют низкоуровневого C/C++ кода.
В дополнение к Tcl, Lua и Javascript (все уже упоминалось), Guile является еще одним языком, специально разработанным для этого.
Мне очень нравится Lua для встраивания, но как еще одна альтернатива, JavaScript легко встраивается в программы на C, C++ (SpiderMonkey и V8) и Java (Rhino).
Я добавлю сюда Tcl. Он предназначен для легкого встраивания в другие программы.
Я бы вложил свои два цента за питон. Я не знаю многих деталей, но блендер пакета компьютерной графики отлично справляется с реализацией скриптов на Python.
Насколько я могу судить, в blender 2.5 интерпретатор запускается изнутри исполняемого файла,
import sys
sys.executable
показывает /blender/blender.exe и есть хорошая поддержка отладки, в нем даже есть полноценный интерактивный интерпретатор.
Для получения дополнительной информации посетите: http://www.blender.org/