发布于 2016-04-15 00:23:04 | 124 次阅读 | 评论: 0 | 来源: 网友投递
Rust 编程语言
Rust是Mozilla开发的注重安全、性能和并发性的编程语言。创建这个新语言的目的是为了解决一个很顽疾的问题:软件的演进速度大大低于硬件的演进,软件在语言级别上无法真正利用多核计算带来的性能提升。Rust是针对多核体系提出的语言,并且吸收一些其他动态语言的重要特性,比如不需要管理内存,比如不会出现Null指针等等。
Rust 1.8 发布了。
和往常一样,你可以从我们的官方页面安装Rust 1.8 ,你也可以在Github上查看详细的更新说明 。
Rust 1.8有两个新功能,并有针对Windows用户的好消息。
第一个新特征是各式各样的“operator equals”运算符,如+ =和 - =,现在正通过各种性状重载。这一变化在RFC953,看起来就像这样:
use std::ops::AddAssign; #[derive(Debug)] struct Count { value: i32, } impl AddAssign for Count { fn add_assign(&mut self, other: Count) { self.value += other.value; } } fn main() { let mut c1 = Count { value: 1 }; let c2 = Count { value: 5 }; c1 += c2; println!("{:?}", c1);
第二个特性是非常小的,RFC 218,在Rust1.8之前,没有字段的结构没有大括号:
struct Foo; // works struct Bar { } // error
在Windows方面,32位MSVC现在建立实施unwinding。这将移动i686-PC-Windows-MSVC到Tier 1的平台。
最后,我们长期使用 make 构建 Rust,但是,我们已经有了建立Rust项目的一个奇妙的工具: Cargo。
stabilizations 库
Rust已稳定拥有约20个库函数和方法,有三大主要变化:UTF-16 related string methods,various APIs related to time,various traits needed for operator overloading mentioned in the language section。
详情查看发行说明
Cargo 特性
cargo init
can be used to start a Cargo project in your current working directory, rather than making a new subdirectory like cargo new
.
cargo metadata
is another new subcommand for fetching metadata about a project.
.cargo/config
now has keys for -v
and --color
Cargo’s ability to have target-specific dependencies was enhanced.
详情查看发行说明