Nim v2.0 正式发布,命令式编程语言
Nim v2.0 已正式发布,这是一门指令式、通用、多范式、静态类型、编译型的编程语言。
公告写道:
2.0 是 Nim 的一次进化,新版本的一项重要特性是将 ORC 内存管理作为默认设置,以及许多其他新功能和改进。
Nim 是一种适合各种用途的编程语言——但并不适合所有人。它专注于命令式编程范式,通过宏系统对其进行增强。其可定制的内存管理使其非常适合要求苛刻的领域,例如硬实时系统和通用系统编程。
Nim 2 主要新特性
- 默认内存策略变更为:
--mm:orc
具体示例查看:A cost model for Nim 或 Introduction to ARC/ORC in Nim。
- 增强与 C++ 的互操作
Nim 2.0 通过新的虚拟编译指示和扩展构造函数编译指示将 C++ 互操作提升到了一个新的水平。
现在,开发者可以定义映射到 C++ 构造函数和虚拟方法的构造函数和虚拟过程,从而允许进一步自定义互操作性。此外还扩展了对 codeGenDecl pragma 的支持,以便它适用于类型。
- 新的标准库模块 (standard library modules)
新版对著名的os
模块进行了彻底修改。其部分功能可在引入Path
抽象的新界面下使用。Path
是distinct string
,它提高了处理路径、文件和目录时的类型安全性。
- 增加可重载的枚举 (Overloadable enums)
可重载枚举已结束实验性阶段,使用示例:
type E1 = enum value1, value2 E2 = enum value1, value2 = 4 const Lookuptable = [ E1.value1: "1", value2: "2" ]
- Strict funcs(严格函数)
“strict funcs” 已达到稳定状态,在未来的版本中将会成为默认选项。
- 用于对象的默认值
在对象声明字段中现在支持使用默认值:
type Rational* = object num: int = 0 den: int = 1 var r = Rational() assert $r == "(num: 0, den: 1)"
- 引入 Unicode 运算符
Nim 2 会默认启用--experimental:unicodeOperators
:诸如⊗
或∘
的 Unicode 运算符支持被数学库使用。请注意,标准库不使用 Unicode 运算符。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
miniblink 108 版本成功编译,全球最小 Chromium 内核
miniblink 作者宣布成功编译出 miniblink 108 release 版本。 据介绍,该文件大小 43M,体积差不多是 miniblink 老版本的两倍(老版本 27M),不过仍然比 Chromium 108 接近200M 的体积小得多。 作者还说道,目前网络和显示绘制到窗口等功能都没接入,下一步计划是能显示一个简单的本地 HTML+CSS。 miniblink 是一个开源、单文件、且目前已知最小的基于 Chromium 的浏览器控件。通过其导出的纯 C 接口,几行代码即可创建一个浏览器控件。 特性 极致小巧的体积 C++,C#,Delphi等语言调用 内嵌Nodejs,支持electron 随心所欲的定制功能、模拟环境 支持Windows xp、npapi 完善的HTML5支持,对各种前端库友好 关闭跨域开关后,可以使用各种跨域功能 网络资源拦截,替换任意网站任意js为本地文件 headless模式,极大节省资源,适用于爬虫
- 下一篇
Firefox 116 发布
Firefox 116 现已正式发布,具体更新内容包括: New 侧边栏切换器允许用户轻松访问书签、历史记录和同步标签面板,在它们之间快速切换,将侧边栏移动到浏览器窗口的另一侧,或关闭侧边栏。现在,无论是否运行任何辅助技术,键盘用户也可以轻松完成这一切,而无需记住键盘快捷键来访问这些面板。 当有英语区域设置可用的更新时,用户现在可以通过“Learn More”链接的形式访问更新通知提示中的发行说明。 现在可以从操作系统复制任何文件并将其粘贴到 Firefox 中。 音量滑块现在可在画中画中使用。 添加了编辑现有文本注释的可能性。 Fixed 从 Firefox 115.0 开始,HTTP/2 的上传性能得到了显着改善,特别是对于具有较高带宽延迟乘积的网络(即同时具有高带宽和高延迟特征的网络)。 各种安全修复。 Changed 用于重新打开关闭的标签页的键盘快捷键 (command + shift + t) 现在会按照项目关闭的顺序重新打开上次关闭的标签页或上次关闭的窗口。如果没有任何标签页或窗口可以重新打开,此命令将恢复上一个会话。此更改是为了应对即将对最近关闭的标签页进行的更改。 D...
相关文章
文章评论
共有0条评论来说两句吧...