[rust-dev] Rust 0.3 released
Graydon Hoare
graydon at mozilla.com
Thu Jul 12 16:10:23 PDT 2012
Mozilla and the Rust community are pleased to announce version 0.3 of
the Rust compiler and associated tools. Snapshot documentation and all
the links in this email are available on our website:
http://www.rust-lang.org
Version 0.3 should still be considered an alpha release, suitable for
early adopters and language enthusiasts. Please file bugs at
http://github.com/mozilla/rust/issues
This release is available as both a tarball and a windows installer:
* http://dl.rust-lang.org/dist/rust-0.3.tar.gz
http://dl.rust-lang.org/dist/rust-0.3.tar.gz.asc
SHA256 (of .tar.gz):
b34c895b9596abb6942d1688e6a5189b08b92e2507234779779c1af91e9ae84e
* http://dl.rust-lang.org/dist/rust-0.3-install.exe
http://dl.rust-lang.org/dist/rust-0.3-install.exe.asc
SHA256 (of .exe):
eb5578506f3df4e55b062223b0d31cfeb28023c0daa37dfcee502b5ce8d0dc80
Please note that the windows installer requires a somewhat specific
version of MinGW and Msys to operate; recent builds of MinGW provide
versions of GCC that are incompatible. Rust presently builds and tests
with release 20110802, containing GCC 4.5. This can be installed
separately from sourceforge:
http://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst/mingw-get-inst-20110802/mingw-get-inst-20110802.exe/download
Also note that in addition to this announcement we are now posting more
detailed release notes on the wiki, as well as a longer-term roadmap. We
hope these documents serve as helpful guides to evaluating the state of
the project:
https://github.com/mozilla/rust/wiki/Doc-detailed-release-notes
https://github.com/mozilla/rust/wiki/Note-development-roadmap
Thanks to everybody who has contributed[1].
Regards,
The Rust Team
Version 0.3 (July 2012)
------------------------
* ~1900 changes, numerous bugfixes
* New coding conveniences
* Integer-literal suffix inference
* Per-item control over warnings, errors
* #[cfg(windows)] and #[cfg(unix)] attributes
* Documentation comments
* More compact closure syntax
* 'do' expressions for treating higher-order functions as
control structures
* *-patterns (wildcard extended to all constructor fields)
* Semantic cleanup
* Name resolution pass and exhaustiveness checker rewritten
* Region pointers and borrow checking supersede alias
analysis
* Init-ness checking is now provided by a region-based liveness
pass instead of the typestate pass; same for last-use analysis
* Extensive work on region pointers
* Experimental new language features
* Slices and fixed-size, interior-allocated vectors
* #!-comments for lang versioning, shell execution
* Destructors and iface implementation for classes;
type-parameterized classes and class methods
* 'const' type kind for types that can be used to implement
shared-memory concurrency patterns
* Type reflection
* Removal of various obsolete features
* Keywords: 'be', 'prove', 'syntax', 'note', 'mutable', 'bind',
'crust', 'native' (now 'extern'), 'cont' (now 'again')
* Constructs: do-while loops ('do' repurposed), fn binding,
resources (replaced by destructors)
* Compiler reorganization
* Syntax-layer of compiler split into separate crate
* Clang (from LLVM project) integrated into build
* Typechecker split into sub-modules
* New library code
* New time functions
* Extension methods for many built-in types
* Arc: atomic-refcount read-only / exclusive-use shared cells
* Par: parallel map and search routines
* Extensive work on libuv interface
* Much vector code moved to libraries
* Syntax extensions: #line, #col, #file, #mod, #stringify,
#include, #include_str, #include_bin
* Tool improvements
* Cargo automatically resolves dependencies
[1] Contributors to Rust 0.3:
Alexander Stavonin
Arkaitz Jimenez
Armin Ronacher
Ben Blum
Ben Striegel
Benjamin Herr
Benjamin Kircher
Brian Anderson
Eric Holk
Erick Tryzelaar
Evan McClanahan
Gareth Daniel Smith
Glenn Willen
Grahame Bowland
Graydon Hoare
Haitao Li
Jeff Olson
Jesse Ruderman
Jon Morton
Jonathan Sternberg
Josh Matthews
Joshua Wise
Jyun-Yan You
Kevin Cantu
Lindsey Kuper
Margaret Meyerhofer
Marijn Haverbeke
Michael Sullivan
Niko Matsakis
Patrick Walton
Paul Stansifer
Ryan Scheel
Ted Horst
Tim Chevalier
Tycho Sci
Zack Corr
More information about the Rust-dev
mailing list