我已经开始使用Haxe将我的ActionScript 3项目转换为NME,但是,我想知道Neko在Linux世界中是什么?我搜索了它,发现它是一只动画猫!
任何人都可以向我解释一下吗?
答案 0 :(得分:54)
同样,Java虚拟机(JVM)可以从多种语言中定位(参见wikipedia上的列表),Neko是一种字节码格式,理论上可以从多种语言编写。然而,对于Neko,大多数人似乎使用Haxe来创建他们的* .n文件。
对于Haxe程序员,Neko目标可以让你:
如果你只对目标SWF或JS感兴趣,你可能不太需要Neko。但是如果你正在编写服务器端代码,那么你会欣赏它的性能,如果你正在编写CPP,你可能会喜欢有一个简单的目标,这个目标很简单,编译速度非常快,而且其行为类似于CPP。
当然,除了Haxe neko之外它是它自己的语言......但至少对我来说,似乎大多数人只是将它与Haxe一起使用。
更多信息:
如果您想用Neko语言编写(请参阅this tutorial),您可以将代码保存为“myfile.neko”并使用nekoc myfile.neko
进行编译,这将编译一个Neko字节码文件“myfile。 N”。
如果您想使用Haxe语言编写,可以将文件保存为“MyFile.hx”并使用“haxe -neko myfile.n -main MyFile”进行编译。
由这两者生成的“myfile.n”没有人类可读的源代码 - 这是Neko字节码。您可以通过运行neko myfile.n
在安装了Neko的任何计算机上运行它。您可以通过运行nekotools boot myfile.n
将其转换为适用于您的平台/操作系统的可执行文件(在没有安装Neko的情况下运行)。
这是一个关于Getting Started With Neko的教程,它涵盖了您编写的命令行程序和(非常非常基本的)网页。
答案 1 :(得分:10)
"ネ"是"cat"的日语,这可能就是你找到你所做的事情的原因。
Neko也是一个虚拟机(" VM"),如Java虚拟机(" JVM")或.Net公共语言运行时(") ; .Net CLR")。
Neko有一种自定义高级语言,作为一种易于定位的语言后端(在某种程度上类似于C--,但不像LLVM那样更接近汇编语言)。换句话说:它是一种可以翻译成编程语言的东西,而不是一种更具参与性的完整的"编译(比如汇编,字节码或机器代码)。 Neko的语言可以翻译成字节码,该字节码是便携式的,通常存储在" .n"文件。
Neko是由Nicolas Cannasse(制作Haxe编程语言的人)制作的,这可能是Haxe在编译器中有Neko目标的原因,以及Haxe工具,例如" haxelib"用它。因为工具被编译成" .n"文件,它们只需要构建一次,然后它们可以在任何具有VM可执行文件的平台上工作" neko"安装。
关于neko可能更有趣一点,为什么你应该为Haxe开发学习它是它用于编译时宏的运行时。请参阅this tutorial,了解如何在编译时运行部分程序并完全访问构建计算机,这意味着您甚至可以在编译时执行复杂的任务,例如解析数据文件。
答案 2 :(得分:6)
Neko为几种不同的语言提供了一个通用的运行时,包括javascript和haxe。编译器将源文件(.neko)转换为可以与虚拟机一起执行的字节码文件(.n)。您可以将编译器用作与虚拟机分离的独立命令行可执行文件,或者作为neko库来执行交互式语言的编译和运行。 neko由nicolas cannasse撰写。
你可以找到Neko Tutorial here