Estou construindo um site público no qual os usuários compartilham dados e scripts para executar alguns dados. Os scripts são executados no servidor em algum tipo de sandbox sem outra interação neste ciclo: meu programa Perl lê em um banco de dados um script criado pelo usuário, adiciona os dados a serem processados no script (ou seja: um documento JSON) e depois chama o intérprete. retorna a resposta (um documento JSON ou texto sem formatação), eu salvo no banco de dados com o meu script perl. O script deve poder ter algum acesso às funções internas adicionadas à linguagem de script por mim, mas nada mais.
Então, eu me deparei com o node.js como intérprete de javascript, e uma hora ou mais atrás com o V8 do Google (o v8 faz sentido para esse tipo de coisa?). O CoffeeScript também me veio à mente, pois parece bom e ainda é Javascript.
Eu acho que o javascript é bastante difundido e mais "sandboxeable", uma vez que não possui chamadas de SO nem nada remotamente inseguro (eu acho).
a propósito, estou escrevendo o sistema em Perl e Php para o front end.
Para melhorar a pergunta: estou escolhendo o Javascript porque acho que é seguro e simples o suficiente para implementar com o node.js, mas quais outras alternativas são para atingir esse tipo de tarefa? Lua? Pitão? Não consigo encontrar informações sobre como executar um intérprete em área restrita de maneira adequada.