《Why Go and Rust are not competitors》这篇文章解释了为什么Go和Rust不是竞争者。这里对作者的观点进行简单摘选,供大家参考。
人们为什么会认为“Go和Rust是一对竞争者”
作者在文中先说了为什么人们会认为“Go和Rust是一对竞争者”:
- Rust和Go推出时间大体相同。Go在2009年11月对外公开,Rust在2010年公开,比Go晚几个月。
- Rust和Go都标榜“内存安全”。
- Rust和Go相比那些老牌编程语言来说很年轻。2012年,Go 1.0稳定版发布;2015年,Rust 1.0稳定版发布。
解释为什么“Go和Rust不是一对竞争者”
- Rust焦点在于“free of charge” 抽象;Go则将很多底层操作放在运行时(runtime)
- Rust专为与C互操作而设计;Go则透过cgo来做互操作
- Go核心焦点在“并发”
- Rust是编译到LLVM,而不是直接生成机器码;Go可直接编译成机器码
- Go的主要服务群体是大量使用Ruby、Python和Node.js等语言的公司;Rust则是与C++和D语言竞争。