Nim命令式編程語言
Nimrod(已改名為 Nim)是一種靜態(tài)類型的編譯系統(tǒng)編程語言。它結(jié)合了 Python、Ada和Modula等成熟語言的成功理念。
高效的
- Nim生成不依賴于虛擬機的本機無依賴可執(zhí)行文件,這些可執(zhí)行文件很小并且允許重新分配。
- Nim編譯器和生成的可執(zhí)行文件支持所有主要平臺,例如Windows,Linux,BSD和macOS。
- 在C ++和Rust的啟發(fā)下,Nim的內(nèi)存管理是確定性的,并且可以使用析構(gòu)函數(shù)和移動語義進行自定義。它非常適合嵌入式,硬實時系統(tǒng)。
- 諸如零開銷的迭代器和用戶定義函數(shù)的編譯時評估之類的現(xiàn)代概念,與在堆棧上分配的基于值的數(shù)據(jù)類型的首選項相結(jié)合,導(dǎo)致了性能極高的代碼。
- 支持各種后端:它可以編譯為C,C ++或JavaScript,因此Nim可用于所有后端和前端需求。
富有表現(xiàn)力的
- Nim是獨立的:編譯器和標準庫是在Nim中實現(xiàn)的。
- Nim具有強大的宏系統(tǒng),可以直接操縱AST,提供幾乎無限的機會。
優(yōu)雅的
- 宏無法更改Nim的語法,因為不需要它-語法足夠靈活。
- 具有本地類型推斷,元組,泛型和和類型的現(xiàn)代類型系統(tǒng)。
- 語句按縮進分組,但可以跨越多行。
示例代碼:
import strutils echo "Type in a list of ints of ints (separate by whitespace): " let tokens = stdin.readLine.split echo tokens.each(parseInt).max, " is the maximum."
評論
圖片
表情
