Помимо предоставления API для моего веб-сайта, я хотел бы предложить пользователям возможность писать простые сценарии, которые будут запускаться на моих серверах. Сценарии будут иметь доступ к объектам, принадлежащим пользователю, и смогут манипулировать, изменять и иным образом обрабатывать свои данные.
Я бы хотел иметь возможность ограничить ресурсы, используемые этими сценариями на хорошем уровне (например, максимальное время выполнения должно составлять 100 мс). Я также хотел бы обеспечить безопасную изолированную программную среду, чтобы каждый пользователь имел доступ только к ограниченному набору данных и ресурсов и не имел доступа к диску, данным других людей и т. Д.
Как правило, сценарии будут очень простыми (например, создавать сумму или среднее значений, соответствующих определенным критериям), и они будут часто использоваться в шаблонах (например, заполнить значение этой ячейки или элемента html средняя или сумма).
В идеале я хотел бы использовать изолированное подмножество хорошо известного, общедоступного языка программирования, чтобы его было легко выбрать. Бэкэнд написан на Python, поэтому язык на основе Python может иметь свои преимущества, но я открыт для других языков и технологий. Javascript также привлекателен своей простой природой и общедоступностью.
Языки должны поддерживать создание DSL и библиотек.
Целевая аудитория - это общая пользовательская база для веб-приложения, не обязательно очень техническая. Другими словами, он не нацелен на базу с особыми знаниями какого-либо конкретного языка программирования. Я ожидаю, что подмножество пользователей будут создавать сценарии, которые будут использоваться большинством.
Есть идеи или рекомендации по языку и технологии? Какие-нибудь примеры других людей, пробующих это, а также успехов и неудач, с которыми они столкнулись?