ruby - multi - Idioma en un Sandbox in Rails
ruby on rails i18n (6)
Debería intentar incrustar JRuby en el navegador.
http://ruby-in-browser.googlecode.com/svn/trunk/evalruby/index.html
Esta pregunta ya tiene una respuesta aquí:
Descubrí que había una piedra arenisca (creada por los tipos que hicieron probar Ruby en tu navegador pero solo era compatible con Ruby 1.8. Otro problema es que no puedo encontrarlo más (parece que dejan de servir la gema del servidores ...).
Entonces, ¿hay alguna forma segura de ejecutar ruby en un sandbox (para que pueda ejecutarlo desde su navegador)? ¿O una forma fácil de ejecutar (por ejemplo, lua / python) en un entorno limitado (sin acceso al sistema de archivos, sin creación de objetos, etc.) y ser llamado desde Ruby (Rails 2.2)?
Quiero hacer una aplicación como try_ruby incluso sin tener un rubí debajo. Pero tiene que ser un lenguaje fácil (vi que había un prólogo en rubí, incluso un ceceo, pero no creo que sean fáciles de aprender idiomas ...).
Entonces, ¿tienes alguna sugerencia o consejo? ¿O debería comenzar a crear mi propia DSL en Ruby (si hay una solución para crear un sistema algo seguro)?
Gracias
Otra forma es como lo hace codepad.org (aislamiento de VM y comprobación de las llamadas)
El tipo que escribió la gema original desapareció, estilo Keyser Söze: http://www.rubyinside.com/why-the-lucky-stiff-is-missing-2278.html
He leído que la gema JRuby es más actual o está más actualizada, pero hasta ahora la encontré mal. Aquí hay algunas instrucciones de configuración: http://flouri.sh/2009/4/4/how-to-set-up-the-jruby-sandbox
En general, parece que a Ruby le falta una implementación sólida de esto ahora :(
Me encontré con este artículo en hackety.org (enlace inactivo ) esta mañana. Tal vez puede servirle como guía en la dirección correcta
No estoy seguro de si desea ejecutar cualquier idioma en una caja de arena. Pero descubrí que JavaScript se ha estado ejecutando como un lenguaje sandbox durante mucho tiempo. El proyecto ruby racer te permite insertar el motor v8 en ruby. Espero que ayude.
Estoy desarrollando una implementación de un sandbox para ruby basada en una modificación del intérprete de ruby escrito en C, he lanzado recientemente una versión funcional de la gema llamada shikashi ( documentación de rdoc ).