0.2.0

0.2.0 #

  • Released on: 29 March, 2012
  • Branched from master on: 4 December, 2015
  • 1500 changes, numerous bugfixes

    • New docs and doc tooling

    • New port: FreeBSD x86_64

    • Compilation model enhancements

      • Generics now specialized, multiply instantiated
      • Functions now inlined across separate crates
    • Scheduling, stack and threading fixes

      • Noticeably improved message-passing performance
      • Explicit schedulers
      • Callbacks from C
      • Helgrind clean
    • Experimental new language features

      • Operator overloading
      • Region pointers
      • Classes
    • Various language extensions

      • C-callback function types: ‘crust fn …’
      • Infinite-loop construct: ’loop { … }'
      • Shorten ‘mutable’ to ‘mut’
      • Required mutable-local qualifier: ’let mut …’
      • Basic glob-exporting: ’export foo::*;'
      • Alt now exhaustive, ‘alt check’ for runtime-checked
      • Block-function form of ‘for’ loop, with ‘break’ and ‘ret’.
    • New library code

      • AST quasi-quote syntax extension
      • Revived libuv interface
      • New modules: core::{future, iter}, std::arena
      • Merged per-platform std::{os*, fs*} to core::{libc, os}
      • Extensive cleanup, regularization in libstd, libcore