並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 5148件

新着順 人気順

Rustの検索結果241 - 280 件 / 5148件

  • 実用Rustアプリケーション開発

    実世界のRustアプリケーションを効率良く開発するための実用的な知見集 仕事などで実世界のRustアプリケーションを書く時に実用的な知見やtipsがまとまっていたらいいなと思ったことはありませんか? この本では、アプリケーションを書く時に悩むポイントや便利crateを素早くアプリケーションに組み込む際のポイントを紹介します。本の内容をスリムにするため、自分が学び始める前に知りたかったものに絞りつつ要所を紹介・解説します。Rustの言語仕様のメジャーどころやよく利用されているcrateはドキュメントが豊富なので、わからないところや詳しく知りたい部分はドキュメントを読んだりLLMに聞いてみたりしてください。 想定読者: "The Rust Programming Language" の要所を読み終えたくらいのこれからRustでアプリケーションコードを書いていく、または今まさにアプリケーションコ

      実用Rustアプリケーション開発
    • Rust Is The Future of JavaScript Infrastructure

      Rust is a fast, reliable, and memory-efficient programming language. It's been voted the most loved programming language six years in a row (survey). Created by Mozilla, it's now used at Facebook, Apple, Amazon, Microsoft, and Google for systems infrastructure, encryption, virtualization, and more low-level programming. Why is Rust now being used to replace parts of the JavaScript web ecosystem li

        Rust Is The Future of JavaScript Infrastructure
      • isucon7予選のアプリをRustに移植したから解説するね | κeenのHappy Hacκing Blog

        κeenです。こういう流れがあったので移植しました。 keenさんが「2028年、Rust でイケてる web application framework はこれだ!」みたいな記事を書くとと "余力" が生まれるかもしれません…!! — FUJI Goro (@__gfx__) 2018年8月28日 まずISUCONを知らない方に雑に説明しておくと、意図的に遅く作られたWebアプリケーションが与えられるので7時間くらいでどれくらい高速化できるかを競うコンテストです。 このお題のWebアプリケーションが参加者や流行りに合わせて複数言語で提供されるのですが、今年はRustが来そうだということで参加者の肩慣らしのために過去問を移植しましたというお話。 ひとまずソースコードは こちら 手元でベンチマークをしてみた限り、Pythonの2倍くらいは速いもののGoには劣るようでした。これの考察については

          isucon7予選のアプリをRustに移植したから解説するね | κeenのHappy Hacκing Blog
        • Haskell は Rust になれるのか?──2023年の Linear Haskell 体験記

          追記:いくらなんでもあまりにも長いので、配列演算に焦点を絞ってより「Rustっぽさ」の気持ちを強調した姉妹編を書きました。手っ取り早く雰囲気を掴みたい方はこちらもどうぞ。 TL;DR GHC 9.0 から Haskell に入った線型型(Linear Types)の機能を一部割とガッツリ使ってみたので、Linear Haskell の現在の使い心地と将来の展望を報告するよ。 使おうと思えば使える段階にあるけれど、一部バグもあるし、まだ言語機能面で実装が追い付いていない部分もあって、快適に書けるようになるにはもうちょっと掛かるよ。それでも実用しようと思えばできるレベルにあるよ。 RustのようになるにはLinear Constraintsに期待。 更新履歴 2023/12/15 11:45 姉妹編へのリンク追加。 2023/10/01 12:30 線型性を納得してくれない場合の \eta-展

            Haskell は Rust になれるのか?──2023年の Linear Haskell 体験記
          • AWS活用の自由度を上げる「Lambda」を「Rust」で活用 メモリの使用量を抑えつつ、プログラムの作成も簡単に

            AWS活用の自由度を上げる「Lambda」を「Rust」で活用 メモリの使用量を抑えつつ、プログラムの作成も簡単に Rust を AWS で活用しよう! 原氏の自己紹介 原旅人氏:じゃあ始めます。私、株式会社ログラスでクラウドエンジニアというタイトルでやっている、原と申します。このたびは、このようなところに呼んでいただきありがとうございます。 今日は、「RustをAWSで活用しよう!」と。「AWS」って、実は「Lambda」の話なんですが、こういったことで話をしようと思います。 自己紹介は先ほどしていただいたので、ほぼ省略です。(スライドを示して)実は松本さん(松本健太郎氏)と私はここに書いてある検索エンジンの会社で一緒に働いていて、私がRustをやるきっかけを作ってくれたのも、実は司会者の松本さんです。 株式会社ログラスについて 今はログラスという会社にいて、クラウドエンジニアという名前

              AWS活用の自由度を上げる「Lambda」を「Rust」で活用 メモリの使用量を抑えつつ、プログラムの作成も簡単に
            • Rust製コマンドでTerminal操作を快適にしよう! | DevelopersIO

              はじめに CX事業本部のshuntakaです。 Terminalで作業をする人に馴染みの深いlsやfindといったOSコマンドの改善や拡張を目的としたRust製CLIが多く公開されています。 本記事は、自分がTerminal操作で利用しているRust製CLIとその利用例を紹介したいと思います。 Rust製ですが、紹介するツールは基本brewでインストール可能なので、気軽に試せます。 お盆が終わる前に入れておくと、お盆開けから一味違う自分になれます。 コマンド紹介 exa 該当するOSコマンド ls, tree 特徴 出力の色付けに加え、Gitのステータス表示もしてくれます(後述) 利用例1 lsを使う局面 exa -ahl --git aliasに登録しています alias ls='exa' alias ll='exa -ahl --git' 動作イメージ Gitのステータス上差分があるフ

                Rust製コマンドでTerminal操作を快適にしよう! | DevelopersIO
              • 『基礎から学ぶ 組込みRust』執筆に寄せて〜Nature RemoへのRust導入の展望〜 - Nature Engineering Blog

                Nature株式会社ファームウェアエンジニアの中林 (id:tomo-wait-for-it-yuki) です。 本記事では、拙著『基礎から学ぶ 組込みRust』1がC&R研究所様より出版されたので、書籍の紹介やNatureのファームウェア開発にRustを使っていきたい、ということを書きます。 本を書きましたエントリは個人ブログで書いている2ので、それとは少し違った観点から話をしたいと思います。 『基礎から学ぶ 組込みRust』の紹介 2021年5月現在、Rustはすでにマイナーの域を超えたと言って差し支えない状況でしょう。一方、組込みRustはまだまだマイナーな分野です。『基礎から学ぶ 組込みRust』出版をtwitterやブログで告知した際も、「Rustって組込みできたんだ?」という反応が少なくありませんでした。 マイナー扱いから脱するための施策として、認知度を上げ、入門を手厚くする、

                  『基礎から学ぶ 組込みRust』執筆に寄せて〜Nature RemoへのRust導入の展望〜 - Nature Engineering Blog
                • WebAssemblyアプリ開発で最も使われている言語は3年連続で「Rust」、Webアプリ開発が最多、欲しい機能はスレッド。The State of WebAssembly 2023

                  回答者はWebAssembly関連の技術者303人。 最も使われているのはRust、2位のJavaScriptの使われ方とは? WebAssemblyのアプリケーションのコードを記述するプログラミング言語として何を使っているかを尋ねた質問への回答では、3年連続でRustがトップ。しかも利用率は上昇中です。 2位に入ったのがJavaScriptです。WebAssemblyバイナリはソースコードをコンパイルしてバイナリに変換することで生成されますが、JavaScriptはWebAssemblyへのコンパイルに対応していません。 WebAssemblyアプリケーションのコードとしてJavaScriptを使う方法は、WebAssemblyで構築されたJavaScriptエンジンをWebAssemblyランタイム上で実行し、そこでJavaScriptコードを走らせることです。 この方法ではWebAs

                    WebAssemblyアプリ開発で最も使われている言語は3年連続で「Rust」、Webアプリ開発が最多、欲しい機能はスレッド。The State of WebAssembly 2023
                  • Rustで初学者がつまづいたところメモ

                    impl<T, E> Result<T, E> { /// ```should_panic /// let x: Result<u32, &str> = Err("emergency failure"); /// x.unwrap(); // panics with `emergency failure` /// ``` #[inline] #[track_caller] #[stable(feature = "rust1", since = "1.0.0")] pub fn unwrap(self) -> T where E: fmt::Debug, { match self { Ok(t) => t, Err(e) => unwrap_failed("called `Result::unwrap()` on an `Err` value", &e), } } prelude impor

                      Rustで初学者がつまづいたところメモ
                    • Linux用キーリマッパーxremapをRustで書き直した - k0kubun's blog

                      このエントリはRust Advent Calendar (3) 22(-10)日目 の記事です。 5年前にxremapというLinux向けのキーリマッパーを作った (Linux向けの最強のキーリマッパーを作った - k0kubun's blog) のだが、X11のレイヤーで実装したため、GNOMEのActivitiesでリマップが効かなかったり、WaylandではXWayland内でしか動かないといった問題があった。 これらの問題を解決すべく、xkeysnailやwayremapといったツールが後に作られたのだが、xkeysnailはWaylandで動かずwayremapはX11で動かない方針なのと、やはり全てのキー入力を中継するようなツールはPythonのような遅い言語よりRustみたいな速い言語で書かれるべきだと思ったので、後発のツール*1の良いところ取りをしながら今回xremapを作

                        Linux用キーリマッパーxremapをRustで書き直した - k0kubun's blog
                      • 『Rustの練習帳』でコマンドラインツールを作る感覚を身につける - Magnolia Tech

                        Rustの練習帳 ―コマンドラインツールの作成を通してRustを学ぶ 作者:Ken Youens-Clarkオーム社Amazon 最近、立て続けにRsutに関する話になったので、さすがに一度ちゃんと勉強しておこうと思って、『Rustの練習帳』を元に練習を始めた。 echo、cat、head、wc、uniqと、伝統的なUNIX由来のコマンド群を、Rustで実装するとどうなるか?をひたすら繰り返す演習問題集。 その実装の過程で必要になるRustの機能がちょっとずつ増えていくように構成されているところがミソ。 Rustの使い方としてコマンドラインツール実装に使われる例が増えてきたけど、この本でも扱っているclapというライブラリがよくできていて、確かに一番面倒臭い引数の処理をここまで面倒見てくれるなら、メモリ安全云々の前にいい感じ。 一方で、演習問題に使ったコマンドの数が多く、「もう少しまとめて

                          『Rustの練習帳』でコマンドラインツールを作る感覚を身につける - Magnolia Tech
                        • Rust のエラーハンドリングはシンタックスシュガーが豊富で完全に初見殺しなので自信を持って使えるように整理してみたら完全に理解した - Qiita

                          Rust のエラーハンドリングはシンタックスシュガーが豊富で完全に初見殺しなので自信を持って使えるように整理してみたら完全に理解したRust はじめに Rust の Result や Option を使ったエラーハンドリングは機能が豊富なので便利な半面、初心者にとっては難しく感じられてしまいます。 とはいえよく見るとシンタックスシュガーが豊富なだけですごく難しいということはなかったので、自分の理解のためにも整理してまとめてみました。 Result とは Result は失敗する可能性のある関数の返り値のために用意された列挙型で、関数が成功した場合の返り値のバリアントと失敗した場合の返り値のバリアントを提供します。

                            Rust のエラーハンドリングはシンタックスシュガーが豊富で完全に初見殺しなので自信を持って使えるように整理してみたら完全に理解した - Qiita
                          • Raspberry Pi Picoで組込みRust開発(開発環境構築編) - Qiita

                            はんだ付けが難しい場合、価格は少々高くなりますが、スイッチサイエンスからピンヘッダ実装済みのPicoが販売されているので、それを購入するのもよいでしょう。 ピンヘッダのはんだ付けが完了したら、ブレッドボードに挿入します。PCとUSBケーブルで接続するので、ケーブルが出る方の端に配置すると、残りの部分に部品を置きやすくなります。 それでは、以下より開発環境を構築していきます。 実行環境 Mac mini (2018) macOS Big Sur 11.5.2 HomebrewでGitをインストール済み Macでの手順を記述しますが、Linuxでも同様に実行できると思います。 開発に必要なツールの準備 まず、Rustのツールチェインをはじめとした、開発に必要なツールをインストールします。 Rustツールチェインの準備 https://rustup.rs/ の手順に従い、Rustのツールチェイン

                              Raspberry Pi Picoで組込みRust開発(開発環境構築編) - Qiita
                            • 世界のプログラミング言語(44) シンプルで現代的なZig言語、RustやC++が複雑すぎると嘆く人の福音となるか

                              Zigは2015年に登場した新しいオープンソースのプログラミング言語です。Go言語やRust言語のように、C言語の置き換えを目標にしたコンパイラ言語です。その最大の特徴はシンプルであることです。確かに、マクロもプリプロセッサもありませんが、現代的な言語に仕上がっています。最近話題になることが増えてきたので試してみましょう。 ZigのWebサイト Zigとは Zigはアンドリュー・ケリー氏によって2015年に登場した新しいプログラミング言語です。コンパイラ基盤のLLVMを利用しており、幅広いOSに対応した実行ファイルを生成することができます。 Zigはシンプルをモットーとしています。Zigのマニュアルでは、C++やRust、D言語など多くの機能を持つ言語を挙げて、それらとは異なりシンプルであることを名言しています。 そして、その構文は、C言語と似ているのですが、遅延処理のdefer構文や型推

                                世界のプログラミング言語(44) シンプルで現代的なZig言語、RustやC++が複雑すぎると嘆く人の福音となるか
                              • Rustでシンプルなロードバランサーを作成してみた - Qiita

                                はじめに この文章はGoでシンプルなL7ロードバランサーを作成するというKasun Vithanageさんの記事を参考にRustでL7ロードバランサーを書いてみたという記事です。ロードバランサーについて、ちゃんと勉強するならそっちを見た方が良いかもしれません。 またこの記事を書いている途中にactix-webのexampleのレポジトリがガッツリとactix-web 2.0-alpha.3に書き換えられました。actix-webの2系はfuturesの0.3系を使っております(actix-webの1系はfuturesの0.1でした)。多いに参考にさせてもらっております。途中までサンプルなしで2.0-alpha.1を強引に動かしていたので非常に助かりました。 成果物 https://github.com/rchaser53/rlb 実装する内容について NginxのようなL7ロードバランサー

                                  Rustでシンプルなロードバランサーを作成してみた - Qiita
                                • Rustが遅すぎる?プロファイリングで性能向上!

                                  「開発プロセスにプロファイリングを組み込むのはどうだろう?」 ミーティングで、プロファイリングの重要性を発言するだけで、みんながあなたの深い知見、意識の高さに驚くことでしょう。もちろん、あなたは、プロファイリングのやり方を知っている必要はありません。開発の終盤に、性能目標が達成されず、解析が実施される頃には、誰もあなたの発言は覚えていません。しかし、万が一、あなたの意見が採用されても困らないように、この記事を参考にしてください。 Goは、CPU、メモリ、block、mutexなど、使いこなせないほどの種類をサポートするプロファイリングツールpprofを標準機能として提供します。一方、Rustは、そんな機能を提供しません。Rustへの愛が揺らぐかもしれませんが、Rustへの愛は、見返りを求めない純愛です。愛の見返りに何かが与えられると期待してはいけません。 Rustでもpprofあなたは、す

                                    Rustが遅すぎる?プロファイリングで性能向上!
                                  • Rustの日本語ドキュメント/Japanese Docs for Rust

                                    このサイトではRustの日本語ドキュメントを公開しています。 Rustはパフォーマンス、安全性、生産性に優れるプログラミング言語です。 Rustの入門書 プログラミング言語Rust日本語版 Rustプロジェクト公式の入門書「The Rust Programming Language」を和訳したものです。通称「TRPL」または「the book」 Rust 2018 Editionに対応しています。最新の英語版をベースにしていますが、一部、古いところも残っています じっくり読みたい人向けにPDF版もあります Rust by Example日本語版 動作するサンプルコードを中心に学べる入門書です Rust 2018 Editionに対応しています。2020年ごろの英語版をベースにしていますが、一部未翻訳です 各種リファレンス、ガイド 標準ライブラリリファレンス 以下のモジュールについて和訳があ

                                    • Rustが過去最大のバージョンアップ、「Rust 2018 Edition」正式リリース - Publickey

                                      Mozillaが中心となってオープンソースで開発されている言語「Rust」の最新バージョン「Rust 1.31」がリリースされました。 そしてRust 1.31はこれまでのRust言語に対する破壊的変更によってRust言語を進化させる「Rust 2018 Edition」(以下、Rust 2018)の最初のリリースでもあります。 これまでのRustは「Rust 2015 Edition」(以下、Rust 2015)と呼ばれます。 Rust 2018では言語の破壊的変更が行われましたが、Rust 2018のコンパイルを行うにはオプトイン方式による設定が必要。デフォルトではRust 2015のコードをコンパイルするようになっているため、Rust 2015で書かれたユーザーのコードに対する互換性はRust 2018でも維持されるようになっています。 Rust 2018 Editionでは生産性の

                                        Rustが過去最大のバージョンアップ、「Rust 2018 Edition」正式リリース - Publickey
                                      • プログラミング言語Rust

                                        注意: 最新版のドキュメントをご覧ください。この第1版ドキュメントは古くなっており、最新情報が反映されていません。リンク先のドキュメントが現在の Rust の最新のドキュメントです。 プログラミング言語Rust ようこそ!この本はプログラミング言語Rustの教材です。Rustは安全性、速度、並行性の3つのゴールにフォーカスしたシステムプログラミング言語です。 ガーベジコレクタなしにこれらのゴールを実現していて、他の言語への埋め込み、要求された空間や時間内での動作、 デバイスドライバやオペレーティングシステムのような低レベルなコードなど他の言語が苦手とする多数のユースケースを得意とします。 全てのデータ競合を排除しつつも実行時オーバーヘッドのないコンパイル時の安全性検査を多数持ち、これらの領域をターゲットに置く既存の言語を改善します。 Rustは高級言語のような抽象化も含めた「ゼロコスト抽象

                                        • Rustのこれまでとこれから | κeenのHappy Hacκing Blog

                                          # Rustこれまでとこれから ---------------------- [Learn Languages 2018 in ODC (LL2018) ](https://llevent.connpass.com/event/95443/) === # About Me --------- ![κeenのアイコン](/images/kappa.png) * κeen * [ちゅーんさんだよー](https://shindanmaker.com/789932) * [@blackenedgold](https://twitter.com/blackenedgold) * Github: [KeenS](https://github.com/KeenS) * [Idein Inc.](https://idein.jp/)のエンジニア + Rustで開発してるよ * Lisp, ML, Rus

                                          • なぜRustを学ぶべきなのか 〜 5年経った今改めてまとめてみる - Qiita

                                            Rust 1.0がリリースされたのは2015年の5月で、5年前のこととなります。自分は1.0 betaのころにRustを始めたので、なかなか感慨深いものです。この5年の間に、いくつもの企業でRustを採用、もしくはその検討がされるようになり、ゆるやかであるもののRustの普及が進んでいると感じます。 そこで、1.0から5年経ち、だんだんと普及しつつあるこの時期に、なぜRustを使うべき、学ぶべきなのか、改めてまとめてみようかと思います。Rustを簡単に紹介する場合、メモリ安全とパフォーマンスの両立、高い生産性をもたらす言語機能などが挙げられることが多いですが、自分なりにRustを学ぶ意味を掘り下げてみようと思います。 なお、以下の文章はほとんど個人的な経験に基づいて書かれたものですので、その点はご注意下さい。 Rustはほどよい機能を提供する言語である 世の中には様々なプログラミング言語が

                                              なぜRustを学ぶべきなのか 〜 5年経った今改めてまとめてみる - Qiita
                                            • Rocket - Simple, Fast, Type-Safe Web Framework for Rust

                                              A web framework for Rust that makes it simple to write fast, type-safe, secure web applications with incredible usability, productivity and performance. Get Started Learn More Read FAQ

                                              • RustのWebフレームワークで実現する“爆速アプリ開発” 「こういうのやりたい」がすぐできる、actix-webの活用

                                                ウェブアプリケーションをRustで開発している、株式会社estie。今回開催された「Rust、何もわからない…」では、実サービスで活用されているRustについて、その活用方法の事例を紹介しました。estieでアルバイトとしてRustを用いたウェブアプリの開発に取り組んでいるkenkoooo氏。「actix-web」の活用について発表しました。 アジェンダの紹介 kenkoooo氏:では僕、kenkooooが「actix-webで快適Webアプリ生活」というタイトルで発表します。よろしくお願いします。 (スライドを示して)今日発表したいことは、actix-webというRustのWebフレームワークが、どれだけ使いやすいかということです。それから、これは立ち入った話なのですが、actix-webのミドルウェアという機能があって、それも今estie(株式会社estie)でけっこう使っているので、

                                                  RustのWebフレームワークで実現する“爆速アプリ開発” 「こういうのやりたい」がすぐできる、actix-webの活用 
                                                • Facebook、次期ビルドシステムの開発でRust言語の採用を明らかに

                                                  Facebookは同社のソフトウェア開発において、同社が主導して開発しているオープンソースのビルドシステム「Buck」を利用しています。 Backは高速なビルドが可能な点を大きな特徴としており、もともとAndroidアプリケーション向けのビルドシステムとして登場しました。 その後対応する言語やプラットフォームが拡張され、現在では15種類以上のプログラミング言語と、さまざまなスマートデバイス、VRヘッドセット、そしてサーバアプリケーションにまで対応しています。 次期ビルドシステムの開発を決断 しかしこうした拡張を重ねる中でBuckの複雑さは増していき、新機能の追加がどんどん難しくなってきたと、Facebook Developersのブログに投稿された記事「The future of Buck」で吐露されています。 同社の開発チームは約4年前から、Buckのアーキテクチャの改善を段階的に行う取

                                                    Facebook、次期ビルドシステムの開発でRust言語の採用を明らかに
                                                  • A half-hour to learn Rust

                                                    A half-hour to learn Rust In order to increase fluency in a programming language, one has to read a lot of it. But how can you read a lot of it if you don't know what it means? In this article, instead of focusing on one or two concepts, I'll try to go through as many Rust snippets as I can, and explain what the keywords and symbols they contain mean. Ready? Go! Variable bindingsThe let keywordlet

                                                      A half-hour to learn Rust
                                                    • RailsのCSVのところをRustで処理したら早かった - Qiita

                                                      背景 RailsでCSVを返す時、10万データくらいのものを普通に処理するとメモリを食い潰したり、処理が遅かったりする。 そこで解決策を探していたら、RustでRailsの代わりにCSVを作るという素晴らしい記事に出会った。 この記事はPostgresやNginxを使ってたが、私はMySQLを使っており、Railsのアプリケーション内で完結したかったので、参考にしながら試験的に作って見た。 お断り Railsをすでに理解していることを前提に進めます。 初心者の方へ環境構築周りを最後の方におまけとして書いておきますので参考にしてください。 筆者はRust初心者ですのでアドバイスを頂けるととても助かります。 環境 Ruby 2.3.3 Rust 1.14.0 Rails 5.0.1 Gemfileは基本デフォルト source 'https://rubygems.org' git_source

                                                        RailsのCSVのところをRustで処理したら早かった - Qiita
                                                      • Rustで作るLinuxデバイスドライバ

                                                        だれでもできるシリーズとして、Rustでカーネルモジュールを実装しながら学んできましたが(役に立たないキャラクタデバイスドライバなど)、そろそろ実際に使える機能を実装したいころですよね! 今回は、筆者が実装したネットワークPHYドライバが、Rustで実装された初めてのデバイスドライバとしてLinuxカーネルに採用された話を紹介します。 誤解:LinuxカーネルがRustをサポート「LinuxカーネルがRustをサポートした」というニュースを見て、Rustのコードがどんどん採用されていると誤解している方もいるようです。このニュースは、「LinuxカーネルをRustでも書けるようになりましたが、実際に何かを実装するかどうかは未定」という意味です。Linuxカーネルは、メモリマネージメント、ネットワーク、暗号など、数多くのサブシステムで構成されており、それぞれのメンテナが、コードの採否を判断しま

                                                          Rustで作るLinuxデバイスドライバ
                                                        • Rust concepts I wish I learned earlier

                                                          This past month, I have been enthralled by the Rust programming language given its unique edge for writing memory-safe, modern programs. Over the years, several languages have emerged as the most preferred by engineers to write resilient, backend software. The tides have shifted from Java/C++ into Go and Rust, which combine decades of programming language theory to build tools that are effective i

                                                            Rust concepts I wish I learned earlier
                                                          • TypeScriptやGoやRustでWebAssemblyウォークスルー - SMARTCAMP Engineer Blog

                                                            みなさん、WebAssembly聞いたことありますよね? スマートキャンプでエンジニアをしている瀧川です。 私が初めてWebAssemblyを目にしたのは確か2018年、VimをWebAssemblyに移植してブラウザで動くようにしたという記事だったかなと思います。 https://github.com/rhysd/vim.wasm 当時は「はー、なんだか未来を感じるけど、どう使われてくんだろう」くらいな認識で、最近までほとんど注目していませんでした。 しかし、少し前にffmpeg.wasmについての記事がバズっているのを見かけたときビビっときましたね。 ブラウザ上でffmpegが動かせるのはWebアプリケーションを作る上で可能性が広がりますし、何よりWebAssemblyのポテンシャルが活かされていると感じました。 そこで今回、WebAssemblyの世界観を味わうために、代表的なWeb

                                                              TypeScriptやGoやRustでWebAssemblyウォークスルー - SMARTCAMP Engineer Blog
                                                            • Rust開発者のためのC++入門書:所有権と借用について | POSTD

                                                              今日、ソーシャルサイト「reddit」を見ていたら、“ Rustの基礎を学んでからC++を始める場合 、何を勉強すればいいか”と問う投稿があり、私は自分のブログを復活させ、その中で質問への答えを書いたら面白いのではと考えました。 私にはRustを学んだ後にC++を扱う仕事に就いた経験があるため、Rustの経験を持つ人がC++に移行していく様子をまとめてみたいと思ったのです。 本稿はC++の構文と特徴を既に知っていて、RustからC++の世界に移行する方法に興味を持っている読者を対象とします。 しかし、私は全てに精通しているわけではないので、本稿では所有権(ownership)、借用(borrowing)、ライフタイム(lifetime)に焦点を当てて説明していきます。 所有権と移動 Rustの一番大きな特徴は所有権です。所有権は、プリミティブ型ではない値に対するデフォルトの動作として、コピ

                                                                Rust開発者のためのC++入門書:所有権と借用について | POSTD
                                                              • GoCLIツール職人のためのRust入門

                                                                三連休中にこんなツールを作った。 普段はGoでCLIツールを書いているけど、このツールで初めてRustを本格的に使ったのでその際に得た知見を元にGoでCLIを作っている人向けにとりあえずRustでツールが作れる状態になれることを目指して、CLIツールを作るときによく使っている処理やRustならではの構文などを中心に書いてみた。 この記事を通して「なぁ~んだ。案外Rustでもサクッとツール作れそうじゃん」とか「Rustにも意外とツール向けのライブラリとかあるんだなぁ」とか思って貰えると嬉しい限り。

                                                                  GoCLIツール職人のためのRust入門
                                                                • グーグル、Rustで書かれたセキュアなOS「KataOS」を発表

                                                                  Googleが「KataOS」を発表した。これはオープンソースの「RISC-V」チップで動作する組み込みシステム向けに、新しいセキュアなOSを模索する初期段階の試みだ。 KataOSは「ほぼ完全にRustで」書かれているという。Rustは「Androidオープンソースプロジェクト」やLinuxカーネルプロジェクトで採用されているプログラミング言語だ。 Googleのオープンソースチームは、「KataOSはほぼ完全にRustで実装されており、Off-by-oneエラー(OBOE)やバッファオーバフローのようなバグのクラス全体を除去することで、ソフトウェアセキュリティの強力な出発点になる」と説明している。同チームは、インテリジェントなアンビエント機械学習(AmbiML)システムの構築を進めている。 プロジェクトのGitHubページでは、KataOSとそれを包含するプロジェクト「Sparrow」

                                                                    グーグル、Rustで書かれたセキュアなOS「KataOS」を発表
                                                                  • [翻訳] Rustの正式リリースから1年を振り返って(米Rust公式ブログより、DropboxやFirefoxの事例、開発状況やコミュニティの動向など) - Qiita

                                                                    [翻訳] Rustの正式リリースから1年を振り返って(米Rust公式ブログより、DropboxやFirefoxの事例、開発状況やコミュニティの動向など)Rust この記事は、Rustの正式リリースから1年を記念して、Rust 公式ブログに2016年5月16日に投稿された、「One year of Rust1」を日本語に翻訳したものです2。 Rust における1年間 (One year of Rust) 2016年5月16日 Aaron Turon Rust とは、あなたに、こんな力を与えてくれる言語です: 妥協のないパフォーマンスとコントロール 古典的な並列プログラミングの落とし穴3 を含む、あらゆる種類のバグの回避 Python4 や Ruby5 といった言語に匹敵する使いやすさ Rust は、高い安定性と高速性を備えたソフトウェアを書くための言語であり、なによりも、楽しみながら使えるも

                                                                      [翻訳] Rustの正式リリースから1年を振り返って(米Rust公式ブログより、DropboxやFirefoxの事例、開発状況やコミュニティの動向など) - Qiita
                                                                    • Writing a container in Rust

                                                                      Just writing about Rust stuff, Python automation, random tech subjects, and anything related to the world, virtual or not, dreamt or real. Website moved to litchipi.site, nothing new will be published there. All the articles can be read from the new website

                                                                      • 米国防総省DARPA、C言語のコードからRustへの自動変換実現を目指す「TRACTOR」プログラム開始

                                                                        米国防総省DARPA、C言語のコードからRustへの自動変換実現を目指す「TRACTOR」プログラム開始 アメリカ国防総省 DARPA(Defense Advanced Research Projects Agency:国防高等研究計画局)は、C言語のコードからRust言語のコードへ高い精度での自動変換実現を目指す「TRACTOR」(Translating All C to Rust)プログラムの開始を発表しました。 DARPAは軍事技術の開発および研究を行う機関であり、現在のインターネットはDARPAの前身となるARPAが1967年に開始した「ARPANET」がその起源であることはよく知られています。 DARPAが発表したTRACTORプロジェクトは、C言語のコードからRust言語のコードへの自動変換を高い精度で実現することで、過去にC言語で開発された多くのソフトウェアをメモリ安全なソフ

                                                                          米国防総省DARPA、C言語のコードからRustへの自動変換実現を目指す「TRACTOR」プログラム開始
                                                                        • RustにおけるGitHub Actionsベストプラクティス - paild tech blog

                                                                          こんにちは大櫛です。Travis CIがオープンソースプロジェクトで使いづらくなったり、Azure PipelinesからGitHub Actionsになった途端*1爆発的な流行が生まれたりと、CIサービスにおいてもここ数年で色々な動きがありました。 特に技術記事・ブログのトレンドや企業のリクルート向け資料を見ていると、GitHub Actionsの利用が進んでいるような印象を受けます。 今回はそんなGitHub Actionsについて、Rust projectで使う際に知っておいた方がいいことやactionを紹介していきます。 以下の情報は執筆時点(2023-02-19)のものに基づいています。閲覧時には無効・誤ったものになっている可能性がありますので、必ず最新の情報・状態を確認するようにしてください。 actions-rs(非推奨) まずはじめに、執筆時点では使用を控えた方がいいact

                                                                            RustにおけるGitHub Actionsベストプラクティス - paild tech blog
                                                                          • 一人称視点で自然に足元が見えるようにするには? 人気サバイバルゲーム『RUST』の開発者が6年間にわたり悩み続けた苦労話を公開

                                                                            初の有料ダウンロードコンテンツとして10種の楽器を追加することを発表したオープンワールドサバイバルゲーム『RUST』が、先週のアップデートでプレイヤーキャラクターに初めて「脚」を追加した。プレイヤーは現在、ゲーム中に下を見れば自分の下半身を見ることができる。 もし現実世界のあなたがいま動けるなら、一度立って下を見てほしい。自然に自分の脚が見えるはずだ。現実を模倣していると思われがちな一人称視点ゲームだが、実は多くの嘘の上に成り立っている。プレイヤーモデルを作り、目の部分にカメラをただ設置するだけでは自然な描写にはならない。一人称視点ゲームでは、ただ下を向いて脚を見るだけでも実は嘘をついているのだ。 『RUST』を開発するギャリー・ニューマン氏が、一人称視点ゲームで違和感なくプレイヤーキャラクターの下半身を描写する苦労話をブログで公開している。 (画像はGarry’s Blog「Rusty

                                                                              一人称視点で自然に足元が見えるようにするには? 人気サバイバルゲーム『RUST』の開発者が6年間にわたり悩み続けた苦労話を公開
                                                                            • フルスクラッチでQEMU型自作エミュレータはどう作る? Rustを使った自作バイナリ変換型シミュレータ

                                                                              Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。msyksphinz氏は、自作エミュレータで得た学びについて発表しました。全2回。前半は、自作エミュレータの実装とその結果について。 実機が存在しなくてもエミュレータを使えば動きの中身が見える msyksphinz氏(以下、msyksphinz):「Rustで作るフルスクラッチQEMU型エミュレータ」と題して、発表をします。 簡単に自己紹介をさせてください。Twitterだとこういうアカウントでいろいろと活動しています。趣味で「FPGA開発日記」というブログを書いていて、RISC-V、FPGA、CPU、低レイヤプログラミングなど、興味のあるものの記事を書いています。本業はハードウェア開発エンジニアをしていて、汎用CPUの設計などの仕事をしています。 今回はRustとい

                                                                                フルスクラッチでQEMU型自作エミュレータはどう作る? Rustを使った自作バイナリ変換型シミュレータ
                                                                              • Rust の嬉しさをより多くの日本語話者に知ってもらうためには、スタンフォードで強く敷かれている educational benefit の概念を Rust コミュニティが抱くことが大事なのではないか、という私見

                                                                                Rui Ueyama @rui314 スタンフォードの授業で「え、ここまでそれわかってなくて聞いてたの?」という質問をしてる生徒はかなりいたし、教える方は驚くこともなく普通にそういう基本的な質問に答えていたので、ああいうのは見習いたい(どちら側も)。 Rui Ueyama @rui314 こういうの、難しい問題とかではなくて本当に簡単なやつで、逆に具体的な例を思い出せないけど、例えば集合論で「∅と書いてあるのは数字の0ってこと?」みたいな。ここまで何十分も空集合がわからずに聞いてたのか〜みたいな。

                                                                                  Rust の嬉しさをより多くの日本語話者に知ってもらうためには、スタンフォードで強く敷かれている educational benefit の概念を Rust コミュニティが抱くことが大事なのではないか、という私見
                                                                                • 「Rust」言語向けの“ビジュアルタイムトラベルデバッガー”「FireDBG」が公開/関数の呼び出しを「コールツリー」として可視化、自由に時間を移動してエラーを特定

                                                                                    「Rust」言語向けの“ビジュアルタイムトラベルデバッガー”「FireDBG」が公開/関数の呼び出しを「コールツリー」として可視化、自由に時間を移動してエラーを特定