weekly
weekly copied to clipboard
【开源自荐】nature 编程语言
代码仓库: https://github.com/nature-lang/nature
文档: https://nature-lang.org/docs/getting-started/meet-nature
功能
nature 是一种编程语言,语法上追求简洁优雅,关注使用者的编写与阅读体验。
目前版本已经实现的功能有
- 变量定义与赋值
- 控制流语句
- 函数与闭包
- 类型系统与自定义类型
- 一元与二元运算符
- struct 结构支持
- 内置 list/map/set/tuple 数据结构
- 错误处理
- 模块管理
- 交叉编译,目前支持编译目标平台 linux/amd64
- 内存分配与自动垃圾回收
- 静态单赋值 ssa
- 反射
- 寄存器分配
使用 C 语言实现,不依赖第三方库(如 llvm,ldd 等),可以直接编译并链接成可执行文件。
当正式版本发布时,nature 会有稳定语法 API、类型系统、GC、协程、泛型、包管理、基础标准库。支持交叉编译,可以编译到 linux/darwin & amd64/riscv64/wasm,同样也可以解释到 nature-vm 执行。
附言
当前依旧处于 beta 阶段,所以我不想也不能也不敢说 nature 解决了 xxx 问题,或者比 xxx 快多少。实际上 nature 只是我在学习计算机程序的构造与解释时产生的一颗种子。然后在过去的某个时刻,我决定让它发芽 🌱,所以我尽可能的将它完善并发布了出来。接下来我也将继续推动 nature 直到首个正式版本发布 🌳。