说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

鲜为人知的静态、命令式编程语言——Nimrod

HTML文档下载 WORD文档下载 PDF文档下载
Nimrod是一个新型的静态类型、命令式编程语言,支持过程式、函数式、面向对象和泛型编程风格而保持简单和高效。目前,Nimrod 0.9.2已经发布了,该版本是目前为止Nimrod最为吸引人的版本。

Nimrod是一个新型的静态类型、命令式编程语言,支持过程式、函数式、面向对象和泛型编程风格而保持简单和高效。Nimrod从Lisp继承来的一个特殊特性抽象语法树(AST)作为语言规范的一部分,可以用作创建领域特定语言的强大宏系统。它还是一个编译型的具有垃圾收集的系统编程语言,有着极其卓越的生产/性能比。Nimrod的设计集中在三个E上:即效率(efficiency)、表达能力(expressiveness)和优雅(elegance)。

Nimrod代码类似这样:

# compute average line lengthvar count = 0var sum = 0for line in stdin.lines:  count += 1  sum += line.lenecho "Average line length: ",  if count > 0: sum / count else: 0
Nimrod特性如下:

  • 生成本地代码(目前通过C语言编译而来),不依赖虚拟机:为了易于重分配,Nimrod产生的小型可执行文档并不具备依赖性;
  • 快速的非垃圾回收机制,支持软件实时系统(比如游戏);
  • 系统编程功能:能够管理自己的内存,直接访问硬件;垃圾回收机制的指针区别于手动管理内存;
  • 零开销迭代器;
  • 跨模块内联;
  • 支持动态方法绑定内联,无虚拟方法表;
  • 用编译时间来评估用户定义函数;
  • 消除整个程序死代码:只用可执行的函数包;
  • 基于价值的数据类型:比如,可在栈上分配对象和数组;

Nimrod编译器不仅可以很好的运行在Windows,Linux,BSD以及Mac OS X系统上还可以轻松移植到其他平台上。此外,Nimrod编译器还可以产生C++或者Objective-C接口。绑定的项目包括:GTK2,the Windows API, the POSIX API,OpenGL,SDL, Cario,Python,Lua,TCL,X11,libzip,PCRE,libcurl,MYSQL以及 SQLite。

目前,Nimrod 0.9.2已经发布了,该版本是目前为止Nimrod最为吸引人的版本。可从这里下载。即将发布1.0版本。该版本带来很多新特性和Bug修复,其中一个最重要的新特性就是整合所有的异常跟踪,允许检查异常等(详情);另外一个新特性就是引入了声明式列表表达式(详情),实现了直接执行模块中的符号表,使用方法 import module except symbol;支持共享内存垃圾回收机制。(完整的改进内容请看官方发行说明)(注:本文部分内容引用自开源社区)

查看更多详情:http://nimrod-code.org/index.html

备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘