2010-11-21 16 views
9

Me gustaría obtener scripts cortos de Scala que se ejecuten tan rápido como lo hacen las secuencias de comandos python, particularmente en términos de tiempo de inicio de script.Mejorando el tiempo de inicio del script Scala - modo cliente?

¿Alguien puede recomendar algunas formas de hacerlo, que no implique compilar con GCJ, por ejemplo?

Una forma en que puedo pensar es ejecutar la secuencia de comandos utilizando el modo de cliente de la JVM, pero parece que no puedo hacer que esto funcione. Un ejemplo (conocido-bueno) de shebang para esto sería genial.

ACTUALIZACIÓN: Soy consciente de las otras preguntas, pero no creo que las respuestas viables se han encontrado hasta ahora, como estoy en busca de soluciones que funcionan en las instalaciones estándar, sin requisitos adicionales. Esto es lo que estaba tratando de hacer con "no implica compilar con GCJ, por ejemplo".

Parece que el modo de cliente está diseñado para este propósito expreso, pero es incómodo activarlo desde los scripts de scala por algún motivo.

+0

Comparando la velocidad de guiones Scala de scripts de Python era exactamente la misma razón que me llevó aquí :) –

Respuesta

6

Como manyotherquestions han ido antes, si uno solo puede saber cómo buscarlos, use Nailgun.

Otras formas de mejorar el rendimiento de scripts es iniciar fsc en el arranque del sistema, por lo que estará disponible para scripts y usar -savecompiled, para evitar la compilación repetida de scripts.

EDITAR

que mencionas -client modo, pero yo creo que no es realmente una buena opción. Le dará un compilador de Scala más lento, y hará poco para mejorar el tiempo de inicio del compilador, si no es Java. Es mucho mejor tener fsc como daemon, ejecutándose como -server, y/o guardar scripts compilados con -savecompiled.

Ahora, no sé qué problemas tiene con -client, pero he leído que no funciona con 64 bits JVM. ¿Podría ser ese tu caso?

PD: Buscando similar preguntas, noté que JRuby tiene soporte integrado Nailgun!

+2

Nutter, el tipo jruby (1 de 4, creo) tiene este post realmente útil: http: //blog.headius .com/2009/01/my-favorite-hotspot-jvm-flags.html –

+0

también: http://groups.google.com/group/jvm-languages/browse_frm/thread/3052f5cdb929e9ee# –

+0

Gracias, pero estoy consciente de estos. Realmente estoy buscando algo que funcione en una configuración estándar, no cosas como la pistola de clavos. Lo siento si eso no estaba claro. –

Cuestiones relacionadas