jslibs – Ejecutando JS fuera del navegador

A pesar de sus potentes características, el lenguaje JavaScript ha sido siempre considerado un lenguaje secundario. Su capacidad para el manejo de excepciones, uso de closures, recolector de basura, etc …, lo podrían convertir en un eficiente y moderno lenguage de script de propósito general como Python o Ruby.

El mayor inconveniente que tenía Javascript para lograr convertirse en un lenguaje de propósito general era que hasta ahora no exitía ningún modo de ejecutarlo sin la dependencia de un navegador. Digo hasta ahora, porque ya es posible gracias a jslibs. jslibs es una librería basada en el motor de JavaScript de Mozilla (Spidermonkey) que permite precisamente la ejecución de código JS fuera de un browser, o lo que es lo mismo, ejecutar código js en modo stand-alone.

Tiene buen color así que voy a ver que tal chuta en mi Ubuntu:

1 .- Lo descargo del repositorio de subversion en un directorio de mi máquina:

svn checkout http://jslibs.googlecode.com/svn/trunk/ jslibs

2.- Tras esperar un rato bastante largo (son muchos ficheros a descargar), entro en el directorio jslib recien creado:

cd jslibs

3.- Compilo las fuentes descargadas (Debo tener instalado de antemano el paquete build-essential).

make all copy

4.- Una vez compiladas las librerías, verifico que todo ha ido correctamente.

ls -al ./opt/

Y obtengo algo parecido a esto:

total 3024
drwxr-xr-x 2 root root 4096 2008-10-22 23:18 .
drwxr-xr-x 7 mister mister 4096 2008-10-22 23:20 ..
-rw-r--r-- 1 root root 1406 2008-10-22 23:18 jsautocfg.h
-rw-r--r-- 1 root root 12057 2008-10-22 23:18 jsautokw.h
-rw-r--r-- 1 root root 10100 2008-10-22 23:18 jsautooplen.h
-rwxr-xr-x 1 root root 827432 2008-10-22 23:18 jscrypt.so
-rwxr-xr-x 1 root root 17496 2008-10-22 23:18 jsdebug.so
-rwxr-xr-x 1 root root 56280 2008-10-22 23:18 jshost
-rwxr-xr-x 1 root root 90128 2008-10-22 23:18 jsio.so
-rwxr-xr-x 1 root root 7756 2008-10-22 23:18 jsobjex.so
-rwxr-xr-x 1 root root 743068 2008-10-22 23:18 jssqlite.so
-rwxr-xr-x 1 root root 56296 2008-10-22 23:18 jsstd.so
-rwxr-xr-x 1 root root 64216 2008-10-22 23:18 jsz.so
-rwxr-xr-x 1 root root 888484 2008-10-22 23:18 libjs.so
-rwxr-xr-x 1 root root 257900 2008-10-22 23:18 libnspr4.so

5.- Fijo las variables de entorno

. ./setenv.sh

6.- Creo un js de prueba.

LoadModule('jsstd');
LoadModule('jsio');
Print('Hola Pollo. Qué hermoso día,\nVerdad...');
File.stdin.Read();

7.- Y finalmente lo ejecuto.

jshost holamundo.js

Para obtener el resultado esperado:

Hola Pollo. Qué hermoso día,
Verdad..
.

Parece que funciona😉

0 Responses to “jslibs – Ejecutando JS fuera del navegador”



  1. Dejar un comentario

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s




Add to Technorati Favorites
Clicky Web Analytics Clicky

Flickr Photos

Aljibe

luz

C1

C1

Más fotos

A %d blogueros les gusta esto: