sábado, 18 de octubre de 2014

Probando Haxe 2da Parte

En esta segunda parte, vamos a comenzar explicando un poco que es Neko y para qué nos puede llegar a servir (Por lo menos al principio).

Neko, como Haxe, es un lenguaje de programación. Obviamente la distribución incluye un compilador, algunas librerías y una máquina virtual (vm).

La VM es pequeña pero está muy bien optimizada, eso le da a Neko una velocidad muy buena.




A los fines de este blog, no es necesario que profundicemos mucho en el tema, pero caben destacar ciertas particularidades.

Como ya sabemos por la compilación y ejecución de "Hola Mundo", el archivo que nos arroja Haxe es un ejecutable para la VM de Neko.

Los ejecutables (en realidad es bytecode) tienen como extensión siempre la letra n (Ej: holamundo.n) 
Si nosotros hubiésemos omitido la extensión del archivo (.n), la VM de neko no hubiese podido abrirlo y la ejecución hubiese terminado con el siguiente error.

Uncaught exception - load.c(181) : Module not found : holamundo


En realidad es posible pedirle a Haxe que nos entregue un archivo sin la extensión (.n en este caso) y luego renombrarlo por nuestra cuenta.





Otros lenguajes:

Bien, obviamente la idea de aprender haxe no es traducir a Neko solamente.
Veamos que pasa con otro lenguaje..digamos JavaScript.

Sin modificar nuestro archivo con el fuente en Haxe, nos limitamos a compilar nuevamente:

$> haxe -main HolaMundo -js holamundo.js

el compilador habrá generado el archivo holamundo.js en el directorio actual.
Para probar nuestro ejemplo debemos invocar el script desde una página HTML.

Abrimos nuestro editor favorito (o cualquier editor de texto plano) y pegamos el siguiente código:



<html>
<head><title>Haxe en Javascript</title></head>
<body>

<div id="haxe:trace"></div>
<script type="text/javascript" src="holamundo.js"></script>

</body>
</html>


Podemos ver los resultados abriendo el archivo html con nuestro navegador favorito.

La misma prueba podemos hacer con Flash

$> haxe -main HolaMundo -swf holamundo.swf

Nuevamente, tendremos un archivo nuevo en nuestra carpeta llamado holamundo.swf
Para probar si todo ha salido bien, debemos escribir algo de código html para invocar nuestro ejemplo:




<html>
<head><title>Haxe en Flash</title></head>
<body bgcolor="#dddddd">
<embed src="holamundo.swf"
       bgcolor="#ffffff"
       width="400"
       height="300"
       name="haxe"
       quality="high"
       align="middle"
       allowScriptAccess="always"
       type="application/x-shockwave-flash"
/>
</body>
</html>


Más ejemplos en la próxima entrada.