読者です 読者をやめる 読者になる 読者になる

Introduction: Rust 言語について

(ここでは Rust 0.8-pre version について言及します)

まず Rust って何よ

Rust is a programming language with a focus on type safety, memory safety, concurrency and performance. It is intended for writing large-scale, high-performance software that is free from several classes of common errors. Rust has a sophisticated memory model that encourages efficient data structures and safe concurrency patterns, forbidding invalid memory accesses that would otherwise cause segmentation faults. It is statically typed and compiled ahead of time.

チュートリアルはここ つまるところRust は 型安全、メモリ安全、並列実行、パフォーマンスに焦点を当てた言語で、大規模で高パフォーマンスなソフトをかけることを目標としてるそうです。安全なメモリ管理内蔵とのこと。

特徴についての部分の意訳混じりの翻訳おいておきます:

型推論(Type inference)

型とかの修飾はあくまでオプションで、型推論してくれます。まあ型書いたほうが多分安心できるとは思うけど。

task-based な 並列実行(Safe task-based concurrency)

Rust の軽量タスクはメモリ共有の代わりにメッセージでやり取りするらしいです。まだ試してません。

高階関数(Higher-order functions)

効率良くてフレキシブルなクロージャイテレーションとかデータ構造の制御にやくだってるらしい。

パターンマッチと代数データ型(Pattern matching and algebraic data types)

関数型言語の代数的データ型に似てて、CのenumよりパワフルなRustのenum(列挙型)でのパターンマッチングはコンパクトでプログラムのロジック書くのに表現力豊か!

ポリモーフィズム(Polymorphism)

Rust には type-parametric(これなに…) な関数と型、型クラスとOO(object oriented,オブジェクト指向)なインターフェースがあるよ! それぞれをまとめると、Rustは、"型推論できて並列実行書きやすくて高階関数使えてHaskellみたいな代数的データ型使えてポリモーフィズムばっちり!"ってことらしいです。

まだ超発展途中だけど、面白そうだしこれからウォッチしていこう!(地雷)