javascript - motor - v8 jugo
Ejecutando V8 Javascript Engine Standalone (8)
¿Qué hay de ejecutar Javascript V8 a través de la línea de comandos usando node.js ?
node.js usa v8 como motor y agrega mucha funcionalidad encima.
Por ejemplo, en Mac OSX, si tiene instalado node.js , simplemente emita:
$ brew install node
$ node
>
Quiero ejecutar una consola de JavaScript encima de V8. ¿Cómo hago esto?
Creo que esto podría haber cambiado. Leí el manual y construí v8 así:
moose@pc08$ svn co http://v8.googlecode.com/svn/trunk v8-trunk
moose@pc08$ cd v8-trunk
moose@pc08$ make dependencies
moose@pc08$ make ia32.release
ruta de export PATH=${PATH}:/home/moose/Downloads/v8-trunk/out/ia32.release
agregada export PATH=${PATH}:/home/moose/Downloads/v8-trunk/out/ia32.release
a mi .bashrc
moose@pc08 ~ $ source ~/.bashrc
moose@pc08 ~ $ d8 A_tic_tac_toe_Tomek.js < A-small-practice.in
(Con javascript de aditsu y A-small-practice.in de Google Code Jam)
Después de seguir las instrucciones de compilación ( Google V8 Build Docs ) para su sistema;
[v8 directory]$ cd out/native
[v8 directory]$ ./shell (sample shell)
[v8 directory]$ ./d8 (console: dumb)
Creé un alias en mi .bash_profile para facilitar la invocación del shell.
alias v8=''/Volumes/Dev/GitHub/v8/out/native/shell''
Escribir v8 en la CLI (en una nueva Terminal o shell - para volver a cargar su perfil bash) produce el shell v8. JavaScript en el símbolo del sistema! :)
En Mac OS X, asegúrese de tener instalado el brew
. A continuación, ejecute el comando (sudo) brew install v8
, dependiendo de su máquina, esto puede llevar un tiempo. Para iniciar la consola V8, solo ejecuta v8
- Voilà!
Consejo: Para salir de la consola, simplemente ejecute quit()
y no olvide los paréntesis.
Para compilar la consola de desarrollador, en lugar de la aplicación de ejemplo ''shell'', copie y pegue los comandos a continuación en su terminal.
sudo apt-get install subversion scons libreadline-dev
svn co http://v8.googlecode.com/svn/trunk v8
cd v8/
scons console=readline d8
Estas instrucciones funcionarán para Ubuntu / Debian con un kernel "genérico". Para otras distribuciones, deberá reemplazar el comando apt-get con cualquier herramienta de paquete que tenga disponible. En sistemas de 64 bits, puede que necesite agregar arch=x64
. La opción console=readline
habilita el sistema readline , para que se sienta un poco más como un shell estándar.
Más documentación completa aquí: http://code.google.com/apis/v8/build.html
Nota:
Vea también: Construyendo v8 con GYP
Si está planeando incrustar V8, entonces construya y juegue con "d8".
Si, por otro lado, no planea extender V8 o tratarlo como opcional, entonces simplemente use Node.JS. No te molestes con V8 puro.
Node.js tiene E / S verdaderamente completas, extensiones, bibliotecas (como Perl CPAN, Python Eggs, Ruby Gems) y comunidad.
Si usa ArchLinux, puede usar pacman -S v8
para instalarlo. Luego usa d8
para iniciarlo en tu caparazón. Disfrútala.
V8 es fácil de construir y no viene con la sobrecarga de Java VM del intérprete de JavaScript independiente de Mozilla. Afortunadamente, V8 viene con código para construir una consola. Aquí es cómo construir esto:
$> svn co http://v8.googlecode.com/svn/trunk v8-trunk ... $> cd v8-trunk $> scons $> g++ ./samples/shell.cc -o v8-shell -I include libv8.a
Ahora, tenemos un binario independiente llamado v8-shell
.
Ejecutando la consola:
$> ./v8-shell V8 version 2.0.2 > var x = 10; > x 10 > function foo(x) { return x * x; } > foo function foo(x) { return x * x; } > quit()
Ejecutando Javascript desde la línea de comando:
$> ./v8-shell -e ''print("10*10 = " + 10*10)'' 10*10 = 100
Muchas más características están documentadas en la ayuda:
$> ./v8-shell --help Usage: ...