Nim 1.2.0 發布

Nim 系統程式語言的新版本已經發布。它與 1.0 版本存在一些不相容性,例如由於更嚴格的類型轉換。但對於這種情況,有一個標誌—useVersion:1.0。

主要的創新是一個新的垃圾收集器,透過選項 -gc:arc 啟用。該語言的作者 Andreas Rumpf 即將撰寫一篇關於 ARC 優勢的詳細文章,但同時,他建議您閱讀 他在 FOSDEM 的表演,其中顯示了基準測試結果。

  • 編譯器現在支援 --asm 選項,以便更輕鬆地檢查生成的彙編程式碼。
  • align pragma 可用於變數和物件字段,它類似於 C/C++ 中的 alignas。
  • =sink 運算子現在是可選的。編譯器現在可以使用 =destroy 和 copyMem 的組合來有效地移動物件。
  • 運轉時不會檢查是否轉換為無符號整數。詳情 https://github.com/nim-lang/RFCs/issues/175
  • 左值的新語法:var b {.byaddr.} = expr,透過 import std/decls 包含
  • 編譯器支援新的開關--panics:on,它將 IndexError 或 OverflowError 等運行時錯誤轉變為無法透過 try 捕獲的致命錯誤。這可以提高運行效率和程式大小。
  • 產生的 JS 程式碼僅使用空格,而不是空格和製表符的混合。
  • 編譯器現在支援 .localPassc pragma,它可用於處理從目前 Nim 模組產生的 C(++) 檔案的特殊 C(++) 後端選項。
  • Nimpretty 不再接受設定縮排的負面論點,因為這會破壞文件。
  • 新增了新的巨集(收集、複製、捕獲),透過導入糖連接。

此外,標準庫中還添加了許多更改並修復了許多錯誤。

來源: linux.org.ru

為具有 DDoS 保護、VPS VDS 服務器的站點購買可靠的主機 🔥 購買具備 DDoS 防護的可靠網站寄存服務,包括 VPS 和 VDS 伺服器 | ProHoster