taisablog

taisa's engineer blog

「 Rust 」 一覧

Rust+WebAssembly で Hello, World!

2018/11/20   -JavaScript, Rust
 ,

以前 Rust をはじめてみよう!という記事を書いた。今回は Rust + WebAssembly を使って Hello, World!の出力をやってみた。 WebAssembly について まず WebAssembly とは何か。本家サイトの Overview をみてみる。ここにある通り、WebAssembly(WASM)は C/C++/Rust などの高級言語を使って開発をしバイナリ形式で動かすことができる。その為 Web 上で高速に動かすことができる。とりわけゲームなどの実行速度が求められるような分野で有効になる。Chrome、Firefox、Safari、Edgeで利用が可能。 WebAssembly (abbreviated Wasm) is a binary instruction format for a stack-based virtual machine. Wasm is designed as a portable target for compilation of high-level languages like C/C++/Rust, enabling deployment on the web for client and server applications. https://webassembly.org/ よくデモに出てくる Unity を使った動画 https://webassembly.org/demo/Tanks/ Youtube動画 再生回数が一番多い動画をあげておく。2018年2月の動画ですごく分かりやすく説明されている。 Rust+WebAssembly のドキュメント https://rustwasm.github.io https://github.com/rustwasm ここからは以下の記事を実際にやってみる。実際にほぼそのまま実行しているだけなので以下についてはリンクをチェックするだけでも良いです。 https://rustwasm.github.io/book/game-of-life/hello-world.html 事前準備 参考URL:https://rustwasm.github.io/book/game-of-life/setup.html rustup を使って rust をインストールする curl https://sh.rustup.rs -sSf | sh source $HOME/.cargo/env source $HOME/.cargo/envは .zshrc などに記述しておくとよい wasm-pack インストール wasm-pack を使うとビルド・テスト・公開などが簡単にできる curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh cargo-generate インストール cargo-generate を入れるとcargo …

Rust をはじめてみよう!

2018/10/01   -Rust
 ,

Rust をはじめてみよう!ということで Rust をはじめてみました。 Rust ってなに? Rust言語は速度、並行性、安全性を言語仕様として保証するC言語、C++に代わるシステムプログラミング(英語版)に適したプログラミング言語を目指している[4]。2006年の開発初期はグレイドン・ホアレの個人プロジェクトだったが、2009年にMozillaが開発に関わり始めてMozilla Researchの公式プロジェクトとなった 参考 : Rust (プログラミング言語) – Wikipedia また、公式ドキュメントが充実しているのでそちらをみれば大体分かるようになっています。 特徴 ゼロコスト抽象化 ムーブセマンティクス 保証されたメモリ安全性 データ競合のないスレッド トレイトによるジェネリクス パターンマッチング 型推論 最小限のランタイム 効率的なCバインディング インストール rustup を使ってインストールします。 $ curl https://sh.rustup.rs -sSf | sh 実行すると以下のように言われるので設定を反映させます。 To get started you need Cargo’s bin directory ($HOME/.cargo/bin) in your PATH environment variable. Next time you log in this will be done automatically. To configure your current shell run source $HOME/.cargo/env $ cargo command not found: cargo $ source $HOME/.cargo/env $ cargo –version cargo 1.29.0 (524a578d7 2018-08-05) rustc というのコンパイラもインストールされます。 $ rustc –version rustc 1.29.1 (b801ae664 2018-09-20 rustc を使って Hello, World! まずは rustc を使って Hello, …