Sto costruendo un sito Web pubblico in cui gli utenti condividono dati e script per l'esecuzione su alcuni dati. Gli script vengono eseguiti sul lato server in una sorta di sandbox senza altre interazioni in questo ciclo: il mio programma Perl legge da un database uno script creato dall'utente, aggiunge i dati da elaborare nello script (ovvero: un documento JSON) quindi chiama l'interprete, esso restituisce la risposta (un documento JSON o testo semplice), lo salvo nel database con il mio script perl. Lo script dovrebbe essere in grado di avere un po 'di accesso alle funzioni integrate aggiunte al linguaggio di script da solo, ma niente di più.
Quindi mi sono imbattuto in node.js come interprete javascript, e circa un'ora fa con il V8 di Google (v8 ha senso per questo tipo di cose?). Anche CoffeeScript mi è venuto in mente, dato che sembra bello ed è ancora Javascript.
Penso che JavaScript sia abbastanza diffuso e più "sandboxable" dal momento che non ha chiamate del sistema operativo o qualcosa di remoto insicuro (penso).
a proposito, sto scrivendo il sistema su Perl e Php per il front-end.
Per migliorare la domanda: sto scegliendo Javascript perché penso che sia abbastanza sicuro e abbastanza semplice da implementare con node.js, ma quali altre alternative sono per raggiungere questo tipo di attività? Lua? Pitone? Non riesco proprio a trovare informazioni su come eseguire correttamente un interprete sandbox.