タグ

rustに関するimiwonのブックマーク (16)

  • Rust By Example Has Moved

    Rust by example has moved! Its new home is at https://doc.rust-lang.org/stable/rust-by-example. This website is sponsored by JOJOChips.com.

    imiwon
    imiwon 2017/01/31
  • SpacemacsでRust開発環境をあげる - Qiita

    $ # 体インストール $ cargo install racer $ # racerのためにRustのソースコードを追加 $ rustup component add rust-src $ # パスの確認 $ echo ~/.multirust/toolchains/*/lib/rustlib/src/rust/src /Users/owner/.multirust/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/src $ # パスを追加 $ echo "export RUST_SRC_PATH='$(echo ~/.multirust/toolchains/*/lib/rustlib/src/rust/src)'" >> ~/.profile $ # インストールチェック $ bash -l $ racer co

    SpacemacsでRust開発環境をあげる - Qiita
  • Rustのパーサコンビネータnomを使ってみよう - Qiita

    はじめに 使い方を学ぶのに、プロジェクトトップページの説明 と "Introduction to nom: a parsing framework written in Rust" という英語記事が参考になりました。 ここでは上記英語記事に倣って Hello, world! から始めつつ、簡単な計算機の例を解説します。 執筆時点では Rust は 1.13 で、nom は 1.2.4 です。 nom では楽に記述できるようにするためにマクロが多用されており、ソースコードを読むことでマクロの勉強になります。Rust のマクロの記述方法については「Rustのマクロを覚える」という記事を書きましたので参考にしてください。 特徴 lex & yacc (flex & bison) などと違い、書式ファイルを別に用意することなく、Rust のソースコードの中にルールを記述してパーサ関数を生成します。

    Rustのパーサコンビネータnomを使ってみよう - Qiita
    imiwon
    imiwon 2016/12/27
  • Rustのマクロを覚える - Qiita

    はじめに Rust のドキュメントを読んだり実際に動かしたりして理解したことをまとめていたら1、マクロの説明だけでもかなり長くなりそうなので、1つの記事にしてみました。 マクロには以下のデメリットがあるため、一般的にはあまり利用しない方がいいと言われます。 コードが理解しづらい 良いマクロを書くのは難しい コンパイルエラーは展開後のコードで起こるので、原因が分かり難い C/C++ のマクロはコンパイラとは別に用意されたプリプロセッサにより、構文を解釈しない単純な文字列置換が行われます。そのため注意して利用しないと意図しない動作を起こすことがあります2。一方、Rust のマクロはそのような問題が起こらない仕組みになっています。 なお「“物のマクロ”でCのコード行数を半分に!」という記事によれば、「Programming Clojure」(Stuart Halloway著)に以下の警告が書い

    Rustのマクロを覚える - Qiita
    imiwon
    imiwon 2016/12/27
  • rust-clippy の使い方 (outdated) - Qiita

    追記: 2018-12-07 Rust2018 の初期リリースである 1.31.0 から1 rustup 経由での Clippy のインストールが可能になっています2。nightly チャンネルに切り替えたり clippy 自体をソースからインストールする必要はもはやありません。次のように rustup 経由で clippy をインストールするようにしてください。 その他にも記事で記載されている情報は古くなってしまっている部分が多いので、必ず公式リポジトリのREADMEなどを参照するようにしてください。 https://github.com/rust-lang/rust-clippy (追記おわり) rust-clippy の存在自体は以前から知っていたのですが、なんとなくわず嫌いのまま放置してしまっていたので、作業記録を兼ねこの機会に紹介しようと思います。 参考: https://g

    rust-clippy の使い方 (outdated) - Qiita
    imiwon
    imiwon 2016/12/27
  • Cargo.toml の編集に cargo-edit を使う - Qiita

    cargo-edit について cargo-edit の README.md をベースに簡単に日語でまとめています。 ※ 執筆時点の cargo-edit のバージョンは cargo-edit-0.1.3 です。 cargoRust の強力なツールの一つで、パッケージの取得、ビルドといった機能を持っています。 パッケージの追加や削除といった作業は Cargo.toml を編集して行えます。 管理するパッケージが増えるにつれ、依存解決やバージョンの変更などを行いたくなる場合、ファイルの編集というインターフェースはエディタで開くという手間もあり面倒に感じることが多くなるでしょう。 cargo-edit はそれを解決してくれるツールで、パッケージの追加・削除・確認を行うことができます。 cargo-edit: https://github.com/killercup/cargo-edit

    Cargo.toml の編集に cargo-edit を使う - Qiita
    imiwon
    imiwon 2016/09/20
  • Rust勉強してみたー後半戦 - Qiita

    概要 最近Rustの話をよく聞くようになったので、どんなものか触ってみた。 Rust勉強してみたー前半戦の続き。 初心者にとって、前半戦は天国で後半戦は地獄。 はじめに Rustバージョン Rustのバージョンは変わらずrustc 1.10.0 (cfcb716cf 2016-07-03)です。 開発環境 勉強の流れで必要になった+便利な機能にあやかりたくなったので、cargoを導入しました。 といっても、公式インストーラでRust入れた場合は勝手に入っているとのことで、 確認してみたら確かに入っていました。 バージョンはcargo 0.11.0-nightly (259324c 2016-05-20)です。 それとcargo-editも導入してみました。上級者っぽく見えるかなって思って。 この記事を参考にしました。 参考サイト 以下の通り。その他、前記事コメント欄で教えていただいたサイト

    Rust勉強してみたー後半戦 - Qiita
    imiwon
    imiwon 2016/09/20
  • Rust勉強してみたー前半戦 - Qiita

    概要 最近Rustの話をよく聞くようになったので、どんなものか触ってみた。前半戦。後半戦も後日書きます。 バージョンは1.10.0でCargoは使っていない。頑張ってコマンドプロンプトでrustcしてた。IDEはよ。 勉強に使ったサイトは以下。あとは適当にググりながらやった。 プログラミング言語Rust Rust Documentation(英語。つらい。) よくよく見直したら、以下の解説に類似した書き方をしている所が多かったので、参考にした所として追加しておきます。 Rustのポインタ(所有権・参照)・可変性についての簡単なまとめ 前半戦はプログラミング言語Rustの4.1~4.15と3.1をやりました。 軽く構文を知ってから実際に簡単なゲームを作った、という流れ。 注意:実装しているときに引っかかったことだけ書くので、言語の強みとか記述方法とかは上記サイトを見てください。 後半戦はこち

    Rust勉強してみたー前半戦 - Qiita
    imiwon
    imiwon 2016/09/20
  • Paradigms of Rust for the Go developer

    Reader Note: This article aims to provide some technical insight into the paradigm shifts I’ve been exposed to while researching and learning about the Rust programming language when it comes to concurrency. After spending 3.5 years well-vested in the Go programming language, this is my attempt to share these insights and I encourage you; the reader, to also explore these new insights that Rust pr

    Paradigms of Rust for the Go developer
  • The Rust Programming Language 日本語訳をe-bookにしてみる - Qiita

    宣伝 つい先日(2016/07/07)、Rust 1.10がリリースされました。 panic!の挙動をunwindからabortにできるコンパイルオプションが加わったり、他言語から呼び出せるdylibを作成できるようになったりしているようです。 Rustの文献 現時点でRustを勉強しようとするなら、やはり一番の情報源は公式ドキュメントです。というか他に使えそうな情報源がないです。オライリー(英語)のRustが出るのも今年の12月のようです。 公式ドキュメントについては日語訳なさっている方がいらっしゃり、頭が上がりません。 電子書籍版 ところで、英語版のドキュメントには電子書籍版があり、スマホなりタブレットなり電子書籍端末なりにぶちこんで気軽に見る事ができるようになっています。 当然の事ながら、日語訳版には電子書籍版はありません。 ところでこの電子書籍版、なんとGithubでソースと

    The Rust Programming Language 日本語訳をe-bookにしてみる - Qiita
    imiwon
    imiwon 2016/07/10
    TRPL日本語訳のEPUB版、PDF版を作成する
  • GitHub - killercup/trpl-ebook: UNMAINTAINED

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - killercup/trpl-ebook: UNMAINTAINED
  • Rustup beta was released this week. As a member of the Church of Emacs I needed to update my config a bit. This inspired me to write this post on how to setup your Emacs as a great Rust IDE.

  • Rust 入門してる #3 : オブジェクト指向っぽい部分? - ひだまりソケットは壊れない

    #2 に続いて Rust のドキュメントをぼちぼち読んでます。 このブログ記事はメモと感想程度のものですので、詳細は各見出しの下のリンク先を見てください。 今回は構造体とか列挙型とかメソッドとかトレイトとかそこら辺のオブジェクト指向っぽい部分 (の途中まで) を読みました。 パターンマッチとか文字列とかも出てきました。 構造体 (Structs) Structs // こういう感じで定義して、 struct Point { x: i32, y: i32, } // こういう感じでインスタンスを生成。 let origin = Point { x: 0, y: 0 }; // `..` に続けて別のインスタンスを指定すると、残りのフィールドにそのインスタンスの値を渡せるぽい。 let x1 = Point { x: 1, .. origin }; Tuple に名前を付けたような Tuple

    Rust 入門してる #3 : オブジェクト指向っぽい部分? - ひだまりソケットは壊れない
    imiwon
    imiwon 2016/05/12
  • Rust + nix = easier unix systems programming <3

    Lately I’m writing lots of Rust, and I’m particularly interested in systems programming on unix. I’ve been using and contributing to a library called nix1, whose mission is to provide ‘Rust friendly bindings to *nix APIs’. In this blog post, I hope to convince you that you might want to reach for Rust and nix the next time you need to do some unix systems programming, especially if you aren’t flue

    imiwon
    imiwon 2016/05/02
  • Rust 入門 #2 : 所有権システムと可変性 - ひだまりソケットは壊れない

    Rust 入門してる #1」 に続き、ぼちぼちと Rust を学んでます。 今日は所有権システムと可変性についてのメモです。 4 月 14 日に Rust 1.8 がリリースされたので、バージョン 1.8 のドキュメントを読んでます。 *1 所有権システムについては下記の 3 ページを読みました。 Ownership References and Borrowing Lifetimes 可変性については次のページ。 Mutability 基的にはそんなに難しいことは書かれてないですが、後で説明される内容が出てきたり説明があまりうまくなかったりで理解が難しい感じがしますね。 まあざっくりと理解して読み進めていけば良さそうです。 所有権システム (Ownership system) Rust の最も独特で感動的な機能であり、Rust 開発者はこれに精通すべきとのこと。 メモリ安全がこの機能

    Rust 入門 #2 : 所有権システムと可変性 - ひだまりソケットは壊れない
    imiwon
    imiwon 2016/05/02
  • Rust 入門してる #1 - ひだまりソケットは壊れない

    最近 Rust を学び始めました。 まだちまちま構文を追っているところですが、ドキュメントがしっかりしていて学びやすい印象です。 (手元では、現在の最新の安定板である Rust 1.7 を使っています。) The Rust Programming Language Web 上で実行できる環境も提供されています。 Rust Playground 進捗 (4.1 節から 4.6 節まで) とりあえず変数結合 (variable bindings) から初めて、関数やプリミティブ型、コメント、if やループといった制御構文あたりをざっと見てみました。 Variable Bindings Functions Primitive Types Comments if Loops まだここら辺はそんなに特徴的な部分はないですね。 char 型の保持する値が Unicode スカラ値である、とか、例外によ

    Rust 入門してる #1 - ひだまりソケットは壊れない
    imiwon
    imiwon 2016/04/13
  • 1