距离上次发布首个版本已经过去三个月了,大部分时间都在写代码,所以没有什么时间推广了。我现在脸皮还比较薄,选在周六发个贴应该不会打扰到太多人。还不了解 nature 编程语言的 v 友可以看这里 https://nature-lang.org/zh-Hans/docs/getting-started/meet-nature
先介绍一下过去两个版本主要更新了什么内容 🪶
泛型支持,主要分为类型参数和泛型函数两个部分
函数基于类型重载功能。在做泛型展开的时候发现这两个功能基本是类似的,所以顺手开发了。
类型系统完善,主要是 null 值安全,union type ,也是泛型开发过程中学到的关于类型系统的知识
包管理,为了效率选择了 golang 来完成
标准库 syscall/libc 的完善,让 nature 语言可以和操作系统以及 c 语言进行交互。
另外还更新了非常多的小细节,更加详细的更新记录 👉 https://github.com/nature-lang/nature/releases
在实现标准库的时候发现,基于泛型和重载可以实现类似这样的代码,还蛮有意思的。
接下来还会是两到三个 beta 版本,在这三个版本中我会优化 nature 的错误提示,代码着色功能。并学习 lsp 的开发,然后是一个小型的测试项目(估计还需要占用一个帖子进行推广 🙇 ),在实践中进一步完善编程的体验。大概在 0.7.0 就会去掉 beta 标识,此时 nature 可以用于个人的独立/开源项目,但不提供 LTS 版本。
另外我创建了一个 nature 编程语言的交流微信群,后续的主要版本我都将会在群里面同步,也会分享一些我写代码时遇到的问题或者有意思的事情。 可以加我微信 nature-lang
或者留下你的微信(base64),我拉你进群~。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.