Rust_(プログラミング言語)
[Wikipedia|▼Menu]

RustRustのロゴ
パラダイムシステムプログラミング、関数型プログラミング並行計算ジェネリックプログラミング命令型プログラミングオブジェクト指向プログラミング 
登場時期2010年7月7日 (13年前) (2010-07-07)
設計者グレイドン・ホアレ 
開発者Mozilla、グレイドン・ホアレ、Rust Foundation 
最新リリース1.78.0 / 2024年5月2日[1]
型付け静的型付け強い型付け型推論、構造化データ
主な処理系rustc
影響を受けた言語Alef、C++C Sharp、Cyclone、ErlangHaskellLimbo、Newsqueak、OCamlRubySchemeStandard MLSwift 
ライセンスApache-2.0、MIT License 
ウェブサイト.mw-parser-output .plainlist--only-child>ol,.mw-parser-output .plainlist--only-child>ul{line-height:inherit;list-style:none none;margin:0;padding-left:0}.mw-parser-output .plainlist--only-child>ol li,.mw-parser-output .plainlist--only-child>ul li{margin-bottom:0}

https://www.rust-lang.org/ 

拡張子rs 
テンプレートを表示

Rust(ラスト)は、性能、メモリ安全性、安全な並行性を目指して設計されたマルチパラダイムプログラミング言語である。C言語C++に代わるシステムプログラミング言語を目指しており[2]、構文的にはC++に似ているが[3]、「ボローチェッカー」(borrow checker) で参照の有効性を検証することによってメモリ安全性を保証できる。Rustはガベージコレクションなしでのメモリ安全性を達成しており、必要な場面で参照カウントを使うこともできる[4][5]

Rustプロジェクトはオープンソースのコミュニティベース開発で進行しており[6]、言語仕様(検討段階含む)、ソースコード、ドキュメントはオープンソースライセンスで公開されている[7]。2006年の開発初期は、Mozillaの従業員のグレイドン・ホアレ(Graydon Hoare)[8]の個人プロジェクトだったが、2009年にMozillaが開発に関わり始めてMozilla Researchの公式プロジェクトとなった[9][10]。2015年に1.0版がリリースされるまでにいくつもの破壊的な仕様変更があったが、1.0版以降は基本的には後方互換を保って6週間間隔で定期的にリリースされている。

Rustはマルチパラダイムプログラミング言語であり、手続き型プログラミングオブジェクト指向プログラミング関数型プログラミングなどの実装手法をサポートしている。基本的な制御構文はC言語に似ているが、その多くが式(expression)であるという点においてはML言語に似ている。コンパイル基盤にLLVMを用いており[11]、実行時速度性能はC言語と同等程度である[12]。強力な型システムとリソース管理の仕組みにより、メモリ安全性が保証されている。

Rustは2016?2022年の間Stack Overflow Developer Surveyで「最も愛されているプログラミング言語」で一位を獲得し続けている[13]。一方で、Rustは学習難易度が高い言語とも考えられており[14]、2017年ロードマップでは学習曲線の改善を目的として挙げていた[15]

Rustという名前はさび菌に因んで付けられた[16]。この命名の後、当時の開発チームメンバーの多くが自転車を愛好していたことから、自転車のチェーンリングの錆つきを元にしたデザインのロゴが考案された[17]。当然、チェーンリングの錆がさび菌によって生じるわけがなく、「設計者のグレイドン・ホアレが生物学オタクであることから酸化鉄の「錆」ではなく「さび菌」なのだ」と、参考文献[16]の末尾に記されている。
開発体制

Rustはオープンソースのコミュニティベースで開発が進められている。プロジェクトの主管はRust Project Developers(Rust開発チーム)である[18]。2018年現在、言語発明者のグレイドン・ホアレはプロジェクトチームから外れている。プロジェクトの全てのソースコードGitHubで一般に公開されており[19]、コミュニティメンバーの協力により改良が進められる。プロジェクトの大部分のコミットはコミュニティメンバーによるものである[20]

Mozillaの理念[21]を守り、Rust言語は社会に開かれており、言語やツールに対する仕様の提案はRFCの形で取りまとめられ[22]、関連するチケットで仕様詳細について利用者から感想や提言を受けている[23][24]

言語やコアライブラリを開発するRust開発チームはServoウェブブラウザレイアウトエンジン)やRustコンパイラの実装経験を通して言語を改良している。例えば、C言語とRustを連携させるコードを自動生成するbindgenは元々は外部開発者が開発していたが[25]、Mozilla Servo開発チームがServoの開発で利用するためにC++とRustを連携させるコードも自動生成できるよう改良を重ね、現在はServo開発チームと密に連携しているRust開発チームに主管を移行して[26]Servoの開発と共に改良が続けられている[27]
設計と特徴linux.conf.auで披露されたRustプログラミングで成功するために必要なキーコンセプトを紹介したプレゼンテーション
パラダイム

言語実装手法においてのプログラミングパラダイムは特定の実装手法に限定されない非純粋なマルチパラダイムプログラミング言語である。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:152 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef