haxe - ¿Qué es Neko de todos modos?
(3)
Comencé a usar Haxe para convertir mis proyectos ActionScript 3 a NME, pero me gustaría saber, por favor, ¿qué es Neko en el mundo de Linux? Lo busqué, encontré que es un gato animado!
¿Alguien por favor me puede explicar?
Neko proporciona un tiempo de ejecución común para varios idiomas diferentes, incluidos javascript y haxe. el compilador convierte un archivo fuente (.neko) en un archivo de código de bytes (.n) que se puede ejecutar con la máquina virtual. puede utilizar el compilador como ejecutable independiente de la línea de comandos separado de la máquina virtual, o como una biblioteca de neko para realizar la compilación y ejecución para lenguajes interactivos. neko fue escrito por nicolas cannasse.
Puedes encontrar el tutorial de Neko aquí.
"Neko" es japonés para "cat" , que es probablemente la razón por la que encontraste lo que hiciste.
Neko también es una máquina virtual ("VM") como Java Virtual Machine ("JVM") o .Net Common Language Runtime (".Net CLR").
Neko tiene un lenguaje personalizado de alto nivel creado como un backend de lenguaje fácilmente orientado (como C-- en cierto modo, pero no como LLVM , que está más cerca de un lenguaje ensamblador). En otras palabras: es algo a lo que un lenguaje de programación se puede traducir en lugar de una compilación "completa" más complicada (como ensamblado, bytecode o código de máquina). El idioma de Neko se puede traducir a un código de bytes, que es portátil y generalmente se almacena en un archivo ".n".
Neko fue creado por Nicolas Cannasse (la misma persona que creó el lenguaje de programación Haxe), razón por la cual Haxe tiene un objetivo Neko en su compilador, y las herramientas de Haxe, como "haxelib", lo utilizan. Debido a que las herramientas se compilan en archivos ".n", solo se deben compilar una vez, y luego funcionan en cualquier plataforma con el ejecutable VM "neko" instalado.
Quizás un poco más interesante sobre neko, y por qué debería aprenderlo para el desarrollo de Haxe es que es el tiempo de ejecución utilizado para macros en tiempo de compilación. Consulte este tutorial para ver cómo se puede ejecutar parte de su programa en tiempo de compilación con acceso completo a la máquina de compilación, lo que significa que incluso podría realizar tareas complejas, como analizar un archivo de datos, en tiempo de compilación.
Neko para la mayoría de las personas no es más que un objetivo de Haxe. Eso no es técnicamente cierto (tiene su propio idioma y podría ser un objetivo para otros idiomas), pero para la mayoría de las personas, Neko es uno de los objetivos de salida de Haxe.
De la misma manera que la Máquina virtual de Java (JVM) puede orientarse desde múltiples idiomas (consulte la lista en wikipedia ), Neko es un formato de bytecode que, en teoría, se puede escribir desde varios idiomas. Sin embargo, para Neko, la mayoría de las personas parecen usar Haxe para crear sus archivos * .n.
Para los programadores de Haxe, el objetivo de Neko le permite:
- Escriba herramientas y utilidades de línea de comandos (por ejemplo, haxelib y haxedoc están escritas en Haxe con Neko)
- Escriba aplicaciones web o páginas web dinámicas: con mod_neko (o mod_tora) obtiene un procesador web con el mismo tipo de capacidades que PHP, pero bastante más rápido.
- Crea juegos con NME (que originalmente comenzó con Neko, significa Neko Media Engine), y compílalos rápidamente, teniendo un objetivo más cercano a lo que CPP tiene, pero que compila mucho más rápido y donde la salida es multiplataforma.
- Un tiempo de ejecución que está estrechamente relacionado con Haxe y se puede usar desde macros, etc., por lo que puede usar todas las clases de neko. * Dentro de las macros.
Si solo estás interesado en apuntar a SWF o JS, probablemente no tendrás mucha necesidad de Neko. Pero si está escribiendo el código del lado del servidor, apreciará el rendimiento, y si está escribiendo CPP, puede apreciar tener un objetivo simple que es extremadamente fácil y súper rápido de compilar, y que se comporta de manera similar a CPP.
Por supuesto, fuera de Haxe neko es su propio lenguaje ... pero para mí, al menos, la mayoría de la gente lo usa con Haxe.
Más información:
Si desea escribir en el idioma Neko (consulte este tutorial ), puede guardar su código como "myfile.neko" y compilar con nekoc myfile.neko
, que compilará un archivo de bytecode de Neko "myfile.n".
Si desea escribir en el idioma Haxe, puede guardar su archivo como "MyFile.hx" y compilar con "haxe -neko myfile.n -main MyFile".
El "myfile.n" generado por ambos no tiene un código fuente legible por el ser humano, este es el bytecode de Neko. Puede ejecutarlo en cualquier computadora que tenga Neko instalado ejecutando neko myfile.n
. Puede convertirlo en un ejecutable (que se ejecuta sin Neko instalado) para su plataforma / sistema operativo ejecutando nekotools boot myfile.n
.
Aquí hay un tutorial sobre Primeros pasos con Neko , que cubre los programas de línea de comandos que escribe y las páginas web (muy básicas).