「Rust 1.32」リリース
Mozillaのプログラミング言語Rustチームは1月17日、最新版となる「Rust 1.32.0」公開を発表した。デフォルトコンパイラの変更などの機能強化が加わっている。
Rustは性能、並行性、安全性を特徴とする静的型付き言語。Rust 1.32は2018年12月に公開した「Rust 1.31」に続く最新版。
コンパイラでは、alloc_jemallocクレートを削除した。これにより、デフォルトのアロケーターがjemallocからシステムのデフォルトアロケーターとなった。jemallocはパフォーマンス改善を目的にシステムメモリアロケーターとして使われていたが、当初の目的を果たさなくなっていたと言う。LinuxとmacOSではコンパイラは引き続きjemallocを使用するが、コンパイルされたプログラムはシステムアロケーターを利用する。
プリントデバッグ用のマクロ「dbg!」が安定扱いとなった。eprintln!が()を返していたのに対し、dbg!はデバッグしているものの値を返すため、コード構造に変更は入っていないという。ライブラリではこのほか、19種類の関数がconst fnに加わるなど安定化を図った。
このところ強化を続けてきたモジュールシステムでは、仕上げとなる「uniform paths」を導入した。無効なインポートパス宣言をインポートできないパスと同じように解決するという。
2018edition向けにも、マクロ定義で?演算子を使得るようになるなどの機能強化が加わっている。