nature-lang 编程语言的第三个版本发布啦

281 天前
 weiwenhao

距离上次发布首个版本已经过去三个月了,大部分时间都在写代码,所以没有什么时间推广了。我现在脸皮还比较薄,选在周六发个贴应该不会打扰到太多人。还不了解 nature 编程语言的 v 友可以看这里 https://nature-lang.org/zh-Hans/docs/getting-started/meet-nature

先介绍一下过去两个版本主要更新了什么内容 🪶

  1. 泛型支持,主要分为类型参数和泛型函数两个部分

  2. 函数基于类型重载功能。在做泛型展开的时候发现这两个功能基本是类似的,所以顺手开发了。

  3. 类型系统完善,主要是 null 值安全,union type ,也是泛型开发过程中学到的关于类型系统的知识

  4. 包管理,为了效率选择了 golang 来完成

  5. 标准库 syscall/libc 的完善,让 nature 语言可以和操作系统以及 c 语言进行交互。

  6. 另外还更新了非常多的小细节,更加详细的更新记录 👉 https://github.com/nature-lang/nature/releases

在实现标准库的时候发现,基于泛型和重载可以实现类似这样的代码,还蛮有意思的。


接下来还会是两到三个 beta 版本,在这三个版本中我会优化 nature 的错误提示,代码着色功能。并学习 lsp 的开发,然后是一个小型的测试项目(估计还需要占用一个帖子进行推广 🙇 ),在实践中进一步完善编程的体验。大概在 0.7.0 就会去掉 beta 标识,此时 nature 可以用于个人的独立/开源项目,但不提供 LTS 版本。

另外我创建了一个 nature 编程语言的交流微信群,后续的主要版本我都将会在群里面同步,也会分享一些我写代码时遇到的问题或者有意思的事情。 可以加我微信 nature-lang 或者留下你的微信(base64),我拉你进群~。

1144 次点击
所在节点    分享创造
3 条回复
Saturn72
281 天前
厉害厉害 先 star 不过想问文档里说的“为什么语言关键字中包含 emoji ?” 没看到哪里有体现呀~~ 真的很酷
weiwenhao
280 天前
@Saturn72 已经发布的语法中还没加进来,在计划中是有的~
weiwenhao
279 天前
![测试图片裂开]( )

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/962601

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX