Rust是Mozilla 目前正在开发一个新的编程语言,由web语言的领军人物Brendan Eich(js之父),Dave Herman以及Mozilla公司的Graydon Hoare 合力开发。它的设计准则为“安全,并发,实用”,支持函数式,并发式,过程式以及面向对象的编程风格。 创建Rust这个新语言的目的是为了解决一个很顽疾的问题:软件的演进速度大大低于硬件的演进,软件在语言级别上无法真正利用多核计算带来的性能提升。Rust是针对多核体系提出的语言,并且吸收一些其他动态语言的重要特性,比如不需要管理内存,比如不会出现Null指针等等。 Rust最早是在2010年7月的Mozilla的社区峰会上公之于众的,当时就有人问以后是否会用Rust重写Firefox,Brenda说希望如此,并且最终取代C++成为Mozilla的主要开发语言是其开发目标。 Rust作为一门系统编程语言,专门用来编写以往都是由C或者C++编写的高性能程序,但C和C++都非常容易出现类似无效内存访问(segmentation faults )并由此引发的一系列相关的问题,而Rust的出现就是用来避免类似问题的发生。虽然Rust的语法跟C非常的相似,但是它们之间还是存在很大的不同,以下就列出Rust的一些重要特性: l 模式匹配和代数型的数据类型(枚举) l 基于任务的并发性。轻量级的任务都可以在不共享内存的情况下并发运行。 l 高阶函数(闭包) l 多态性,结合类似Java的接口特性和Haskell的类类型。 l 泛型 l 没有缓冲区溢出 l 默认情况下不可变 l 非阻塞的垃圾收集器 接下来,就让我们一起来回顾一下Rust的发展历程吧! 2006年,Rust作为Graydon Hoare的个人项目首次出现。 2009年,Graydon Hoare成为Mozilla雇员。 2010年,Rust首次作为Mozilla官方项目出现。同年,Rust开始从初始编译(由OCaml写成)转变为自编译。 2011年,Rust成功的完成了移植。Rust的自编译器采用LLVM作为其编译后端。 2012年1月20日,第一个有版本号的预览版Rust编译器发布。 当前最新版本就是前几天发布的Rust0.9。 新版的主要改进有 l 改进了运行时和I/O子系统; l 引入了静态链接和链接时优化; l 减少语言中的封包种类; l 为标准库引入了智能指针类型。 开发者表示,0.9版仍然属于alpha版本,只适合早期采用者和语言爱好者使用。
|