http://nim-lang.org/
德國人Andreas Rumpf的作品,原因是他對過去使用的每種語言都不滿意(Pascal也不滿意?)。以前叫Nimrod語言,從0.96版本開始改名為Nim。它在2008-08-22發布了第一個公開版本0.6.0,也是第一個可以自編譯的版本。目前處於pre-1.0階段。從1.0開始將不會再有不兼容的語法(breaking changes)。它的其中一個目標是,保證編譯器盡可能的有效,幾乎與C/C++速度一樣快。它的asyncdispatch模塊允許你做有效的Web服務器程序,並且內建線程池。
它有以下特點(僅舉例一小部分):
1.並發模型
2.深度拷貝
3.procCall 得到多個相似方法
4.experimental模塊化
5.編譯器支持混合語法:Objective C / C++ / C,通過importCpp和importObjc導入
6.使用自動證明技術,自動並發多線程,而不需要鎖
7.生成原生代碼,不需要虛擬機。自帶快速垃圾收集器。
8.可以直接操作硬件
9.內建動態方法,並可以沒有VPT虛擬表
10.自動刪除無效代碼
11.可運行於 Windows, Linux, BSD and Mac OS X,但只提供了二進制Windows版本下載,其它平台要自己編譯。
12.Nim可以產生C++或者Objective C的代碼
13.已經綁定到GTK2, the Windows API, the POSIX API, OpenGL, SDL, Cairo, Python, Lua, TCL, X11, libzip, PCRE, libcurl, mySQL and SQLite
下載:
http://nim-lang.org/download/nim-0.10.2_x32.exe
http://nim-lang.org/download/nim-0.10.2.zip
最最關鍵的,它的FAQ中提到:為什么要再發明一門新語言?回答是:Nim是非常稀少的可編程靜態類型語言,它可以產生原生二進制代碼(這樣的語言甚至更少),不需要運行庫和解釋器。
其次關鍵的,是根據什么語言的影響來設計的?回答是:按照順序:Modula 3, Delphi, Ada, C++, Python, Lisp, Oberon
第三關鍵的,它采用MPL許可證,目前托管於GITHUB上,大家可以任意修改和fork。