mun-lang
一门基于 Rust 的新生编程语言
这门语言刚起步,代码采用 Rust 提倡的多crate结构,逻辑看上去很清晰,对编程语言感兴趣的可以看看。
特点:
提前编译-Mun提前编译(AOT),而不是即时解释或编译(JIT)。通过在AOT编译期间检测代码中的错误,可以消除整个运行时错误类别。这使开发人员可以在自己的IDE舒适的范围内,而不必在IDE和目标应用程序之间切换以调试运行时错误。
静态类型-Mun在编译时而不是在运行时解析类型,从而在编写代码和打开强大的重构工具之门时立即得到反馈。
一流的热重载(hot-reloading )Mun的每个方面在设计时都考虑了热重载。
性能-AOT编译与静态类型结合可确保将Mun编译为可以在任何目标平台上本地执行的机器代码。
LLVM用于编译和优化,以确保最佳性能。热重载确实会引入一点运行时开销,但是可以在生产版本中禁用它,以确保最佳的运行时性能。
交叉编译-Mun编译器能够从任何受支持的编译器平台编译到所有受支持的目标平台。
强大IDE集成 (目前尚未实现) -Mun语言和编译器框架旨在支持源代码查询,从而实现了强大的IDE集成,例如代码完成和重构工具。
示例:
fn main() {
let sum = add(a, b);
// Comments: Mun natively supports bool, float, and int
let is_true = true;
let var: float = 0.5;
}
// The order of function definitions doesn't matter
fn add(a: int, b: int): int {
a + b
}
消息来源:@Chaos 张老师 ,Mun 源码仓库:https://github.com/mun-lang/mun ,书籍 :https://github.com/mun-lang/book
新项目用 Rust 还是 Go ?
如果你用 Rust 语言或 Go 语言编写过代码,就会发现它们之间有些相似之处和不同之处。这两种语言的设计目标有重叠的部分,但也有很多差异。正如我们知道的,该如何选择语言取决于要解决的问题。
很幸运,我们找到了一位对这两种语言都有着丰富经验的工程师 — Damien Stanton,并与他进行了一次交流。更多请看原文,地址:https://dmv.myhatchpad.com/insight/choosing-between-rust-or-go/,消息来源:微信公号-高可用架构。
【译文】Rust中的String和&str
当你开始Rust的学习之旅后,很可能遇到需要使用字符串的场景,但是编译器却无法让你的代码通过编译,因为有一部分代码,看起来像字符串,事实上却又不是。看下这个文章或许能给你解惑:https://zhuanlan.zhihu.com/p/123278299,内容来源:知乎-Praying。
原文地址:https://link.zhihu.com/?target=https%3A//blog.thoughtram.io/string-vs-str-in-rust/
From 日报小组 @Jancd