Я понимаю, что этот вопрос уже задавался раньше, однако этот случай немного отличается.
Я хочу запустить доску изображений Python (используя web.py), которая позволит пользователям создавать новые изображения путем отправки кода. Код будет иметь форму одной функции, которая принимает координаты x,y пикселя и возвращает значения r,g,b, например:
def simpleGradient(xrel,yrel):
r = xrel*256
g = yrel*256
b = 0
return [r,g,b]
Требуется только очень небольшой синтаксис, и он не обязательно должен быть питон. Использование exec
с ограниченной областью действия кажется слишком небезопасным, а использование PyPy или виртуальной машины кажется излишне сложным (я совсем новичок во всем этом).
Существует ли питонический способ выполнения кода на гораздо меньшем языке вместо песочницы? Либо подмножество Python (анализ и внесение в белый список?), либо язык, ориентированный на математику, который я могу встроить?