Update 0.4 release notes

This commit is contained in:
Brian Anderson 2012-10-03 17:41:08 -07:00
parent f885205b1b
commit 3d45e55c97

View file

@ -8,13 +8,14 @@ Version 0.4 (September 2012)
* Keyword removal: 'again', 'import', 'check', 'new', 'owned', 'send', * Keyword removal: 'again', 'import', 'check', 'new', 'owned', 'send',
'of', 'with', 'to', 'class'. 'of', 'with', 'to', 'class'.
* Classes are replaced with simpler structs * Classes are replaced with simpler structs
* Method self types * Explicit method self types
* `ret` became `return` and `alt` became `match` * `ret` became `return` and `alt` became `match`
* `import` is now `use`; `use is now `extern mod` * `import` is now `use`; `use is now `extern mod`
* `extern mod { ... }` is now `extern { ... }` * `extern mod { ... }` is now `extern { ... }`
* `use mod` is the recommended way to import modules * `use mod` is the recommended way to import modules
* `pub` and `priv` replace deprecated export lists * `pub` and `priv` replace deprecated export lists
* The syntax of `match` pattern arms now uses fat arrow (=>) * The syntax of `match` pattern arms now uses fat arrow (=>)
* `main` no longer accepts an args vector; use `os::args` instead
* Semantics * Semantics
* Trait implementations are now coherent, ala Haskell typeclasses * Trait implementations are now coherent, ala Haskell typeclasses
@ -25,15 +26,13 @@ Version 0.4 (September 2012)
* Typestate was removed * Typestate was removed
* Resolution rewritten to be more reliable * Resolution rewritten to be more reliable
* Support for 'dual-mode' data structures (freezing and thawing) * Support for 'dual-mode' data structures (freezing and thawing)
* Last-use analysis is only used for warnings now. Moves must be explicit
for lvalues (TODO: confirm)
* Libraries * Libraries
* Most binary operators can now be overloaded via the traits in * Most binary operators can now be overloaded via the traits in
`core::ops' `core::ops'
* `std::net::url` for representing URLs * `std::net::url` for representing URLs
* Sendable hash maps in `core::send_map` * Sendable hash maps in `core::send_map`
* `core::task' gained a (currently very unsafe) task-local storage API * `core::task' gained a (currently unsafe) task-local storage API
* Concurrency * Concurrency
* An efficient new intertask communication primitive called the pipe, * An efficient new intertask communication primitive called the pipe,
@ -52,8 +51,7 @@ Version 0.4 (September 2012)
* Extensive architectural improvements to rustc * Extensive architectural improvements to rustc
* Begun a transition away from buggy C++-based reflection (shape) code to * Begun a transition away from buggy C++-based reflection (shape) code to
Rust-based (visitor) code Rust-based (visitor) code
* Hash functions improved across the codebase (TODO: need details) * All hash functions and tables converted to secure, randomized SipHash
* New lint checks (TODO: which?)
Version 0.3 (July 2012) Version 0.3 (July 2012)
------------------------ ------------------------