編譯型編程語言Rust v1.14.0 發布

Rust是一個由Mozilla主導開發的通用、編譯型編程語言。它的設計準則為“安全,并發,實用”,支持函數式,并發式,過程式以及面向對象的編程風格。Rust 的設計目標之一,是要使設計大型的互聯網客戶端和服務器的任務變得更容易。因此更加強調安全性、內存配置、以及并發處理等方面的特性。在性能上,具有額外安全保證的代碼會比 C++ 慢一些,但是如果以 C++ 也手工提供保證的情況下,則兩者性能上是相似的。
更新日志
..matches multiple tuple fields in enum variants, structs and tuples. RFC 1492.- Safe
fnitems can be coerced tounsafe fnpointers use *anduse ::*both glob-import from the crate root- It's now possible to call a
Vec<Box<Fn()>>without explicit dereferencing - Mark enums with non-zero discriminant as non-zero
- Lower-case
static mutnames are linted like other statics and consts - Fix ICE on some macros in const integer positions (e.g.
[u8; m!()]) - Improve error message and snippet for "did you mean
x" - Add a panic-strategy field to the target specification
- Include LLVM version in
--version --verbose - Improve macro expansion performance
- Shrink
Expr_::ExprInlineAsm - Replace all uses of SHA-256 with BLAKE2b
- Reduce the number of bytes hashed by
IchHasher - Avoid more allocations when compiling html5ever
- Use
SmallVectorinCombineFields::instantiate - Avoid some allocations in the macro parser
- Use a faster deflate setting
- Add
ArrayVecandAccumulateVecto reduce heap allocations during interning of slices - Optimize
write_metadata - Don't process obligation forest cycles when stalled
- Avoid many
CrateConfigclones - Optimize
Substs::super_fold_with - Optimize
ObligationForest'sNodeStatehandling - Speed up
plug_leaks println!(), with no arguments, prints newline. Previously, an empty string was required to achieve the same.Wrappingimpls standard binary and unary operators, as well as theSumandProductiterators- Implement
From<Cow<str>> for StringandFrom<Cow<[T]>> for Vec<T> - Improve
foldperformance forchain,cloned,map, andVecDequeiterators - Improve
SipHasherperformance on small values - Add Iterator trait TrustedLen to enable better FromIterator / Extend
- Expand
.zip()specialization to.map()and.cloned() ReadDirimplementsDebug- Implement
RefUnwindSafefor atomic types - Specialize
Vec::extendtoVec::extend_from_slice - Avoid allocations in
Decoder::read_str io::ErrorimplementsFrom<io::ErrorKind>- Impl
Debugfor raw pointers to unsized data - Don't reuse
HashMaprandom seeds - The internal memory layout of
HashMapis more cache-friendly, for significant improvements in some operations HashMapuses less memory on 32-bit architectures- Impl
Add<{str, Cow<str>}>forCow<str>
下載
本站原創,轉載時保留以下信息:
本文轉自:深度開源(open-open.com)
原文地址:http://www.baiduhome.net/news/view/4f0c299a
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!