什么是Neko呢?

sim*_*imo 27 haxe neko

我已经开始使用Haxe将我的ActionScript 3项目转换为NME,但是,我想知道Neko在Linux世界中是什么?我搜索了它,我发现它是一只动画猫!

有人可以向我解释一下吗?

Jas*_*eil 57

Neko对大多数人来说只不过是一个Haxe目标.这在技术上并不正确(它确实有自己的语言,并且可能成为其他语言的目标),但对于大多数人来说,Neko是Haxe输出目标之一.

同样,Java虚拟机(JVM)可以从多种语言中定位(参见维基百科上的列表),Neko是一种字节码格式,理论上可以从多种语言编写.然而,对于Neko,大多数人似乎使用Haxe来创建他们的*.n文件.

对于Haxe程序员,Neko目标可以让您:

  • 编写命令行工具和实用程序(例如,haxelib和haxedoc是用Haxe编写的,目标是Neko)
  • 编写Web应用程序或动态网页 - 使用mod_neko(或mod_tora),您可以获得具有与PHP相同功能的Web处理器,但速度要快一些.
  • 使用NME(最初以Neko开头,它代表Neko Media Engine)创建游戏,并快速编译它们,使目标更接近CPP,但编译速度更快,输出是跨平台的.
  • 一个与Haxe紧密相关的运行时,可以在宏中使用 - 所以你可以在宏中使用所有的neko.*类.

如果你只对目标SWF或JS感兴趣,你可能不太需要Neko.但是如果你正在编写服务器端代码,你会欣赏它的性能,如果你正在编写CPP,你可能会喜欢有一个简单的目标,它很容易编译,而且编程速度非常快,而且与CPP类似.

当然,在Haxe neko之外它是它自己的语言......但至少对我来说,似乎大多数人只是将它与Haxe一起使用.

更多信息:

如果你想用Neko语言编写(参见本教程),你可以将你的代码保存为"myfile.neko"并编译nekoc myfile.neko,这将编译一个Neko字节码文件"myfile.n".

如果您想使用Haxe语言编写,可以将文件保存为"MyFile.hx"并使用"haxe -neko myfile.n -main MyFile"进行编译.

由这两者生成的"myfile.n"没有人类可读的源代码 - 这是Neko字节码.您可以在运行Neko的任何计算机上运行它neko myfile.n.您可以通过运行将其转换为适用于您的平台/ OS的可执行文件(在没有安装Neko的情况下运行)nekotools boot myfile.n.

这是一个关于Neko入门的教程,它涵盖了您编写的命令行程序和(非常非常基本的)Web页面.

  • 更新了我的答案,希望回答你的问题:) (2认同)

Jay*_*Jay 10

"Neko"是日语中的"猫",这可能就是为什么你找到了你所做的.

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开发学习它是它用于编译时宏的运行时.请参阅本教程,了解如何在编译时运行部分程序并完全访问构建计算机,这意味着您甚至可以在编译时执行复杂的任务,例如解析数据文件.


iTe*_*ech 6

Neko为几种不同的语言提供了一个通用的运行时,包括javascript和haxe.编译器将源文件(.neko)转换为可以与虚拟机一起执行的字节码文件(.n).您可以将编译器用作与虚拟机分离的独立命令行可执行文件,或者作为neko库来执行交互式语言的编译和运行.neko由nicolas cannasse撰写.

你可以在这里找到Neko教程

  • 酷,一个新的学习体验即将开始! (2认同)