Nim 不是函數式的, 但 Nim 支持衛生宏, 能夠作 AST 重寫, 能夠自定編譯規則, 是靜態語言中的黑客語言有木有!
自定編譯規則甚至能夠編譯出比 C 代碼還快的結果, 做爲 a better C 當之無愧.
人家 GC 能夠手動步進的啊, 想要什麼 feature 本身加(list comprehension? 沒問題),
加個 const 就能夠作編譯期計算了(想一想 C++ 和 D 裏複雜難以掌握的 template 和 static if 多蛋疼),
改寫 AST 的 pattern language 也是簡單易懂(想一想 Java 的 annotation processing tool 怎麼用的就蛋碎...),
更重要的一點: 沒有那麼多哲學騎着你禁止你怎麼怎麼作, Go 能麼?
|
Nim(原名叫作"Nimrod"),是靜態類型、命令式的編程語言。
Nim團隊在編譯期作了不少工做,
造就了Nim在不損失執行性能的前提下,提高程序員的編程效率
Nim有一個強大的,基於AST的宏機制;Nim在本地線程上有一個強大的實時垃圾收集機制;線程之間能夠經過異步消息機制通信;爲了提供執行效率,Nim還提供了一個不安全的共享內存區。
|
echo("Hello World!!! What's your name? ")
var name: string = readLine(stdin)
echo("Hi, ", name, "!")
var b:string = readLine(stdin)
|