2021年3月16日のブックマーク (6件)

  • 『ポケットモンスター』25周年すべての歴史を5分で振り返るエモすぎる公式映像が登場。あなたの記憶に一番残っている「ポケモン」は?

    株式会社ポケットモンスターは、2月27日に配信した番組「Pokemon Presents」にて、『ポケットモンスター』25周年を祝した映像「Pokemon 25 Years of Non-stop Adventure」を公開した。 『ポケットモンスター』の歴史を5分間に凝縮して紹介する内容で、ゲームからさまざまなグッズやアニメなどが登場する非常にエモーショナルな内容となっている。 (画像は【Official】Pokémon 25 Years of Non-stop Adventureより)(画像は【Official】Pokémon 25 Years of Non-stop Adventureより)(画像は【Official】Pokémon 25 Years of Non-stop Adventureより)(画像は【Official】Pokémon 25 Years of Non-stop

    『ポケットモンスター』25周年すべての歴史を5分で振り返るエモすぎる公式映像が登場。あなたの記憶に一番残っている「ポケモン」は?
    tasshi820
    tasshi820 2021/03/16
  • Rustにおけるirrefutable patternを使ったイディオム

    pandamanです。Rust関係のフォーラムに入り浸って知ったイディオムをこれからの記事で紹介していきます。 この記事では、場合分けを伴わないパターン(irrefutable pattern)を使ったイディオムとして let _ = ...の形のイディオム(値の無視)let _x = ...の形のイディオム(生存期間の調整)の2つを紹介します。 場合分けが伴うパターンマッチRustにおける代表的なパターンマッチはmatch式でしょう。 // Optionに対するパターンマッチ match opt { Some(v) => printf!("Someの場合: {}", v), None => printf!("Noneの場合"), } match式では各パターンにマッチするかどうかで場合分けし、パターンに応じて内部の情報を取り出すこともできます。 このような場合分けと値の分解を同時に行う言

    tasshi820
    tasshi820 2021/03/16
    irrefutable patternには変数の導入も当てはまるのか。あと`<変数名>;`で値のムーブが発生するのは知らなかった。
  • Rust Cookbook for Beginners - CADDi Tech Blog

    こんにちは😉 @ryokotmngです。 今日は社内ドキュメントの、Rust初心者向けのクックブックを公開しようと思います。 私自身コードを書くのに四苦八苦していた頃にとても助けられたので、Rustをはじめたばかりの方の参考になれば嬉しいです。 目次 [toc] はじめに この記事では、The Bookに記載されている知識を前提としています。 Rustを全く書いたことがない方は、先に読んでみることをお勧めします。 サンプルコードが結構長いこと、実行環境があった方が良い内容も多いことから、サンプルコードは大体Rust Playgroundのリンクとなっています。 ぜひご自身で修正して遊んでみてください。 単位つきの計算を型で厳格に縛る 例えば複数の長さの単位 (mm, cm, mなど) を扱う場合に、単位が合っていない長さ同士の計算をする場合、単位を揃える必要がありますね。 この時、最終的

    Rust Cookbook for Beginners - CADDi Tech Blog
    tasshi820
    tasshi820 2021/03/16
  • RustでGUIプログラミング – Icedでtourを触りつつ日本語表示対応をしてみた | DevelopersIO

    RustGUIプログラミングを触ってみました。MacOS向けのXCode+ObjectiveC実装は難儀しましたが、Rustは比較的手軽な感じです。 はじめに Rustを使ってみて、実行ファイル形式はやはり手軽だなーと感じるこの頃です。ただ、毎回ターミナル上での操作となるので「たまにはフォーム形式でやってみたい」と思いました。 RustにもGUIのライブラリが幾つかあり、そのうちの一つIcedを弄ってみることにしました。 Icedを選んだワケ 知名度があると思われるRustGUIライブラリとして、conrod、druid、OrbTk、azul等があります。それぞれに特徴がありつつも、日語が十二分に使えるのはconrodのみのようです。 ですが、上記記事にてconrod版を軽快に動かしたい場合に推奨されているvulkanは、MacOSの場合だと動作環境の都合でmetalにする必要があり

    RustでGUIプログラミング – Icedでtourを触りつつ日本語表示対応をしてみた | DevelopersIO
    tasshi820
    tasshi820 2021/03/16
  • Rustでバイナリを読み書きするのに必要なクレート3選 - aptpod Tech Blog

    研究開発グループの大久保です。 当社の製品の中にはC/C++で書かれたものが存在し、その中には独自のバイナリフォーマットを取り扱うものが存在します。既存のコードとやり取りするようなRustプロジェクトを起こすためには、その独自のバイナリフォーマットをRustで取り扱えるようにしなければなりません。しかしながら、Rustの標準ライブラリの機能だけでは、バイナリの読み書きは意外と面倒になります。そのため、今回はRustでバイナリを扱うのならぜひ知っておきたいクレートを3つご紹介します。 byteorder byteorderはその名の通り、バイトオーダ、つまりエンディアンを扱うためのクレートです。使い方はシンプルで、ByteOrderトレイトと、BigEndian, LittleEndian, NativeEndianのうち自分が扱いたいエンディアンをインポートすれば、バッファと数値型の間で

    Rustでバイナリを読み書きするのに必要なクレート3選 - aptpod Tech Blog
    tasshi820
    tasshi820 2021/03/16
    👀
  • Rust+nomでバイナリ(bmpファイル)を読もう - Qiita

    Rustでバイナリをパースする方法はいくつかありますが、nomでやってみたら以外と簡単だったので記事にします。 nomとは GitHub: https://github.com/Geal/nom Rustのパーサコンビネータライブラリのデファクトスタンダード的な存在です。昔はマクロ中心の記述が中心で、マクロに慣れないと辛いところもありましたが、バージョン5からimpl Traitを活用した関数中心の記述に変更されました。マクロを使わないと書けないところも残っていたりしますが、かなり簡単にパーサコンビネータを使うことができます。文字列だけでなくバイナリのパーサを書くのにも使えます。 目標 バイナリを読む練習として、今回は仕様がかなり簡単な部類のバイナリファイルであるbmp(Windows Bitmap)ファイルを読むことを目標とします。フォーマットはWikipediaを読めばわかります。bm

    Rust+nomでバイナリ(bmpファイル)を読もう - Qiita
    tasshi820
    tasshi820 2021/03/16