並び順

ブックマーク数

期間指定

  • から
  • まで

281 - 320 件 / 9622件

新着順 人気順

Rustの検索結果281 - 320 件 / 9622件

  • この頃 流行りの 言語たち(他)でベンチマーク (Dart, Go, Julia, Nim, Python, Rust 他) - Blank File

    自分が気になっている、主に最近のプログラミング言語でベンチマークをやってみました。方法は、42番めのフィボナッチ数列の値を計算する時間を測るだけです。フィボナッチで各種言語をベンチマーク - satosystemsの日記 を参考にさせていただきました。 注意 筆者はPythonくらいしか使ったことない素人です 言語紹介 測定した言語は、以下の11種類です。 C Dart Go JavaScript Julia Lua Nim Python Ruby Rust Vim Script 選択基準は、 メジャーっぽい 自分が知っていた 自分が気になった 環境構築が楽だった(or すでに構築済みだった) 怖くない などです。気分と手間で選びました。 測定条件 上記の言語でフィボナッチ数列の42番目の数を求める時間を測りました。42番目なのはなんとなく全部の言語がまともに測定できる範囲に収まったからで

      この頃 流行りの 言語たち(他)でベンチマーク (Dart, Go, Julia, Nim, Python, Rust 他) - Blank File
    • 気付いたらRustの環境構築がかなり楽になってた | κeenのHappy Hacκing Blog

      κeenです。ここのところRustの開発ツール回りでリリースが続いてセットアップが楽になってるようだったので最新の情報をお届けします。 とりあえず私は既存の環境があるので一旦全て破棄してから再度セットアップしてみます。 Rustのインストール rustup.rs - The Rust toolchain installerがリリースされたので以下で一発です。 $ curl https://sh.rustup.rs -sSf | sh そして をシェルのrcファイルに書き加えたらOKです。 今のシェルにも反映するには同じく上記のコマンドを打ちます。 周辺ツールのインストール cargoがあるので楽ですね # コードフォーマッタ $ cargo install rustfmt # 補完、定義ジャンプなど $ cargo install racer まあまあ時間がかかります。 エディタ(Emac

        気付いたらRustの環境構築がかなり楽になってた | κeenのHappy Hacκing Blog
      • Rustベースのモダンなterminal 、 Warp | DevelopersIO

        Introduction Warpは、生産性と使い勝手を考えて再設計されたRust製のterminalです。 先日パブリックベータが開始され、誰でも使えるようになりました。 ※現在はMacのみ。他のプラットフォーム近日対応予定とのこと 完全Rustネイティブのアプリで、GPUでレンダリングするので高速です。 いまの開発に適した、モダンな機能をそなえたterminalになっています。 Why Warp? ここに、なんでいまさらterminal? の理由が書いてます。 かんたんにまとめると、 開発者ならコードエディタとターミナルは絶対使う コードエディタはどんどん進化してるがterminalは昔から変わってないから再開発した Warpの入力は最新のテキストエディタみたいに使える。出力はnotebookみたいに使える。 よく使うコマンドをsuggestionしたり、ワークフロー機能でコマンド入力

          Rustベースのモダンなterminal 、 Warp | DevelopersIO
        • 開発者がもっとも好きなプログラミング言語は「Rust」、Stack Overflow「2020 Developer Survey」より

          調査結果のうち、言語またはその技術を使用して開発を行っており、継続的に利用したいプログラミング言語を尋ねた質問(複数回答)では、Rust(86.1%)が1位となった。その理由としては、パフォーマンス、制御のしやすさ、安全にメモリを利用できること、システムプログラミングに適した同時実行性の高さ、マクロなどが挙げられている。オープンな開発プロセスを採用していることもあって、(利用していない人を含む)多くのプログラマから高い評価が寄せられた。 2位はTypeScript(67.1%)で、WebフロントエンドおよびNode.jsコードベースにおけるサイズと複雑さの増大と相まって、TypeScriptの静的型付けによるコードの正確性が、プログラマの信頼感を高めている。また、TypeScriptのpolyfillによって、ECMAScriptにおけるアロー関数や非同期処理、クラスといった変更との高い互

            開発者がもっとも好きなプログラミング言語は「Rust」、Stack Overflow「2020 Developer Survey」より
          • 年末年始 Rust 振り返り

            年末年始の短い冬休みは何もすることがなく(いや、することはいくらでもあるんですが)、ずっと Rust のコンパイルエラーと見つめ合っていました。去年は後半から久々にそこそこの時間を Rust に費やしたので、思ったことを振り返りたいと思います。 所有権と生存期間は理解できてからが本番Rust と言えば所有権と生存期間です。難しいと言われる理由です。難しいです。難しいのでドキュメントや Rust 本でもページを割いて解説されています。 Rust 本も出版されましたし、理解しやすくなったと思います。 が、所有権と生存期間は理解できてからが本番です。ある程度の規模のコードを書いて間違えて書き直してを繰り返し、設計と実装のトレーニングを積まないと身につきません。コンパイルエラーが出るたび、まだまだ理解が浅いと痛感します。 GC がないとはそういうことです。 とにかくデータ型の設計に苦労するRust

            • VSCodeがWebAssemblyの実行時デバッグに対応。C/C++やRust、Zigなどのソースコードと関連付け、変数参照、ブレークポイントなど可能に

              VSCodeがWebAssemblyの実行時デバッグに対応。C/C++やRust、Zigなどのソースコードと関連付け、変数参照、ブレークポイントなど可能に マイクロソフトは、オープンソースで開発しているコードエディタ「Visual Studio Code」(以下、VSCode)の最新版となる2023年9月版(バージョン1.83)で、JavaScriptデバッガがWebAssemblyのデバッグにも対応したことを明らかにしました。 The JavaScript debugger can now debug code compiled into WebAssembly if it includes DWARF debug information. For example, C++ code compiled using Emscripten can be debugged: pic.twitt

                VSCodeがWebAssemblyの実行時デバッグに対応。C/C++やRust、Zigなどのソースコードと関連付け、変数参照、ブレークポイントなど可能に
              • 書き捨てるためのRust - Qiita

                はじめに Rustは「きちんとしたプログラムを書く時にはいいけど、書き捨てのプログラムを書くには向いていない」と言われることがあるようです。「一般論としては全くその通り」と思う一方で、自分自身を振り返ってみると、これまでPythonで書いていたような書き捨てに近いプログラムも全部Rustで書くようになっています。 なぜ書き捨てのプログラムもRustで書くのかを考えてみると 最初は書き捨てだと思っていても、手直ししながら使い続けることは意外と多い コンパイラが割と多くのエラーを捕捉してくれるのでデバッグの時間が短くて済む 記述量の多さはエディタの補完があってあまり気にならない といったあたりが理由になっています。 そうはいってもRustがいろいろと面倒な言語であることには違いないので、書き捨てるときは普段のRustプログラミングとは少し違った書き方をした方がより早く書けるのではないかと思いま

                  書き捨てるためのRust - Qiita
                • [Rust] 自然に見える迷路の生成

                  Rust でやるゲーム開発アルゴリズムシリーズ、第4弾ぐらいでしょうか? 今回はプログラム的に迷路生成をします。 元々は、四分木による経路探索をテストするために考えたものですが、これはこれで独立した知見になりそうなので別記事にしました。 自然に見える迷路とは 何をもって自然な迷路というかは、人によると思いますが、ここでは次のような感じのものを指します。 ある程度迷路としての構造を持ちながらも、分岐やループを持ち、道幅をいくらか持つことによってエージェント同士がすれ違えるようにします。 また、壁の形状にノイズを加えて単調にならないようにしています。 総合的には、鍾乳洞のような天然の洞窟というほどは自然ぽくはありませんが、完全に人工的な環境というわけでもない、ほどほどに自然な迷路を目指します。 このような地形のプロシージャル生成については、様々な方法があります。 ここで紹介するのはごく一部で、

                    [Rust] 自然に見える迷路の生成
                  • Rustは銀の弾丸となり得るか 新しいOS開発を実現する可能性

                    Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。garasubo氏からは、「Rust」で新しいOSの設計を試みる3つのOSについて発表がありました。 「Rust」で新しいOSの設計を試みる論文を紹介 garasubo氏:よろしくお願いします。「RustはOS界の銀の弾丸になりうるか 論文で見るRustで変わるOS設計」というタイトルでgarasuboが発表します。内容を詰め込みすぎちゃったので、けっこう駆け足の発表になると思いますが、ご了承ください。 Rustは、OSを書くにあたってC言語の代わりになるんじゃないかといろいろと注目されてきていて、今回は3つの論文を紹介します。論文はRustを使って新しいOSの設計を模索するというものです。 1つ目がSOSP2017(Symposium on Operating Sy

                      Rustは銀の弾丸となり得るか 新しいOS開発を実現する可能性
                    • 第1回 Rust Hands-On

                      2021/02/17 に、サイバーエージェント社内向けに開催した Rust ハンズオンの資料です。第1回は、Rust の概観を掴んでもらうことを目的にプレゼンテーションを行いました。

                        第1回 Rust Hands-On
                      • Rustのコードチェックを強力にする3つのツール | κeenのHappy Hacκing Blog

                        κeenです。 Rustaceanのみなさんは普段書いてるRustのコードを検証するのに cargo check や cargo test などのツールを使っているかと思いますが、それらを強力にするツールの miri 、 MIRAI 、 kani をそれぞれ紹介します。 Rustにはいくつかコードの正しさや行儀のよさを検査する方法がありますね。 cargo check や cargo test 、 あるいはビルドしたバイナリを走らせて検証したり色々手を尽くしているでしょう。 ですがこれらだけだとあらゆる種類のバグを拾いきれる訳ではないのもみなさん承知の通りだと思います。 既存の方法だと手が回らない所があるので他のアプローチでコードを検証してくれるツールがあると嬉しいですよね。 そういったツールを3つ紹介します。 先に注意しておくと、これらのツールはまだ成熟しきってはおらず使いづらい点、使い

                          Rustのコードチェックを強力にする3つのツール | κeenのHappy Hacκing Blog
                        • Introducing Turbopack: Rust-based successor to Webpack – Vercel

                          Vercel's mission is to provide the speed and reliability innovators need to create at the moment of inspiration. Last year, we focused on speeding up the way Next.js bundles your apps. Each time we moved from a JavaScript-based tool to a Rust-based one, we saw enormous improvements. We migrated away from Babel, which resulted in 17x faster transpilation. We replaced Terser, which resulted in 6x fa

                            Introducing Turbopack: Rust-based successor to Webpack – Vercel
                          • Rustで扱える機械学習関連のクレート2021 - Stimulator

                            - はじめに - 本記事では、Rustで扱える機械学習関連クレートをまとめる。 普段Pythonで機械学習プロジェクトを遂行する人がRustに移行する事を想定して書くメモ書きになるが、もしかすると長らくRustでMLをやっていた人と視点の違いがあるかもしれない。 追記:2021/02/24 repositoryにしました。こちらを随時更新します github.com 追記;2021/07/26 GitHub Pagesでウェブサイトにしました vaaaaanquish.github.io - はじめに - - 全体感 - - 機械学習足回り関連のクレート - Jupyter Notebook Numpy/Scipy Pandas 画像処理 形態素解析/tokenize - scikit-learn的なやつ - 各ライブラリと特徴比較 - Gradient Boosting - XGBoos

                              Rustで扱える機械学習関連のクレート2021 - Stimulator
                            • 【CTO meetup】Rust,Go,Elixir,Kotlin次世代言語の魅力をCTOが語る - Qiita

                              参加したイベントのメモです。 イベント概要 【CTO meetup】Rust,Go,Elixir,Kotlin次世代言語の魅力をCTOが語る 2018/04/12(木) 19:00 〜 23:00 https://flexy.connpass.com/event/82063/ 言語選定について サーバーが2種類あった。 使う言語を統一していこう→トップダウンでElixirに決まる。 1200台のサーバーを4人で運用。自動化しないと無理。 →GOで自動化(現場発信) Elixir使いたいとは思っていたが、ずっと使えずに居た。 Railsで何のチューニングもなしだとパフォーマンス問題。 →Elixirだと何のチューニングもなくても10倍は違う。 APIサーバー ユーザー情報保存 ユーザーのストレージ情報 書き換え用API マルチバトルサーバー ずっと接続しっぱなしのサーバー。 言語はC#, R

                                【CTO meetup】Rust,Go,Elixir,Kotlin次世代言語の魅力をCTOが語る - Qiita
                              • RustのWebフロントエンドフレームワーク「Kagura」をElectron上で動かしてみる - Qiita

                                RustでもWebAssembly出力ができるようになっているんですが、いつか触ろうと思いつつずっと触る機会がありませんでした。 ちょうど自身の周りでもElectronの利用事案が増えて来て(例えばPostludium/Peridotでパイプラインの設計エディタのためにElectron使おうと思ったこともありました......)、良い機会なので入門として件名のライブラリを触ってみることにしました。 Kaguraとは Rust製のWebフロントエンドフレームワークです。端的に言ってしまえばReactやVueなどの仲間です。 仮想DOMを用いて差分レンダリングを行う点は既存のフレームワーク同様ですが、アーキテクチャ的にはHalogenやElmが近いです (いわゆるTEAの形をとっています)。 RustでWebAssemblyを出力する、動かす Rustにはwasm-bindgenという便利ツー

                                  RustのWebフロントエンドフレームワーク「Kagura」をElectron上で動かしてみる - Qiita
                                • マイナンバーカードの仕組みはどうなっている? RustでAndroidアプリを作ってみて分かったこと【デブスト2021】

                                  2020年コロナ禍の特別定額給付金では、マイナンバーカードがあればオンライン申請できて早めに給付金を受け取ることができた。少しずつマイナンバーカードを持つメリットが増えてきた。将来的には健康保険証や運転免許証の代替として利用できるという話もある。しかしもっと大きなメリットがあるという。ゆめみ 池口直希氏がRustを使ったマイナンバーカードを操作するアプリの作成を通して解説する。 株式会社ゆめみ マーケティングソリューション事業部 サーバーサイドエンジニア 池口 直希氏 マイナンバーカードの仕組みはどうなっている? 国立豊田高専を中退し、2021年4月にゆめみに入社した池口直希氏。サーバーサイドエンジニアでPHP、TypeScript、C#、Go、Rustといった言語のほか、AWS、Terraform、Dockerなどを使う。「なんでも屋なので、フロントエンドにも手を出したりもしています」と

                                    マイナンバーカードの仕組みはどうなっている? RustでAndroidアプリを作ってみて分かったこと【デブスト2021】
                                  • Rust/WebAssemblyのトラブルに効くデバッグ&高速化テクニック

                                    本連載では、Webブラウザー上でJavaScriptとともに動作できるバイナリ形式のプログラムファイル「WebAssembly」を、Rustプログラミング言語で実装する方法を説明していきます。前回はRust/WebAssemblyとJavaScriptとのデータ交換について説明しました。今回は、ログ出力とファイルサイズ縮小の方法、および、成果物をパッケージにして世界に公開する方法を説明していきます。 はじめに 本連載では、Webフロントエンド開発において注目されているバイナリ形式のプログラムファイルWebAssemblyを、Rustで実装して活用する方法を説明しています。 より本格的にプログラムを開発するには、正しく動作させるまでにデバッグを行う必要があります。本記事ではデバッグ時に利用できるログ出力について説明します。また、アプリの読み込み速度をより速くできる、ファイルサイズ縮小方法につ

                                      Rust/WebAssemblyのトラブルに効くデバッグ&高速化テクニック
                                    • Rust始めてみた。JSONフォーマッターを作ってみた | stin's Blog

                                      唐突にRustを使ってみたいと思ったので勉強を始めてみました。 始めた理由始めてみたかった理由は色々あります。 まずはやはりフロントエンド開発ツールが色々とRustで実装されることです。VercelはTurborepoとTurbopackをRustで実装していますね。JavaScriptコンパイラのSWCもRustで実装されています。あとは、uhyoさんのnitrogqlもRustで作られていて、おもしろいなと思いました。そんな感じで、コンパイラ実装でRustがよく使われていることと、ビルドツールなどのテキスト処理に興味があったのが1つ目の理由です。 あとは、Tauriですね。ふとデスクトップアプリを作りたいと思ったときにTauriを調べたんですが、TauriのバックエンドをRustで書けたらかっこいいなと思いました。普通にJavaScriptでも書けるらしいんですが、かっこよさ重視です。

                                        Rust始めてみた。JSONフォーマッターを作ってみた | stin's Blog
                                      • 【個人開発】爆速な賃貸検索サービスをさらに高速化した【Rust】 - Qiita

                                        個人で運営している賃貸物件の検索サービス Comfy のバックエンドを Rust でリプレースしました。この記事では、そのリプレースの背景と詳細をご紹介します。 まずは結果から 技術構成: Rust + Cloud Run1 へ移行 (Python + GCE2 から) 性能向上: 約 1.5 倍 開発期間: 1 ヶ月間 コード行数: 約 40 % インフラ費用: かなり減少 (多分3) 短い期間・少ないコードでかなり高速化できちゃった上に、開発体験もとてもよい Rust は本当に素晴らしいです…!! サービス概要 Comfy は 日本全国の賃貸物件を超高速に検索できる Web サービス です。 技術構成等の概要は、以前書いた記事 「【個人開発】爆速な賃貸物件の検索サービスを作った」 をご覧頂ければと思います。 もしよかったらこちらからぜひ試して頂き、さらによくなった性能を体感してみて下さ

                                          【個人開発】爆速な賃貸検索サービスをさらに高速化した【Rust】 - Qiita
                                        • Linuxのネットワークスタックが遅すぎる?RustとXDPでパケット処理!

                                          「Linuxのネットワークスタックが遅すぎる!」 詳細はわかりませんが、すごくエンジニアステージが高そうですね!ネットワークスタックの高速化は多くの前例があり、中途半端に試すと、周辺の詳しい人に一晩中、指導をうけるはめになりかねません。前例のないRustなら安心です。 典型的な高速化手法広く使われている高速化手法は、オペレーティングシステムのプロトコルスタックを使わずに、サーバアプリケーションが直接、NICにアクセスして、パケットを処理するというものです。Linuxの上で、FreeBSDのプロトコルスタックとサーバアプリケーションを統合するという、謎の組み合わせを運用しているクラウド事業者もいます。 上記の高速化手法のポイントの一つが、アプリケーションが、高速に、NICにアクセスするための手法です。たくさん提案されてきましたが、今回は、現在、人気があるXDPを使うことにします。聞いたことが

                                            Linuxのネットワークスタックが遅すぎる?RustとXDPでパケット処理!
                                          • Rust vs. Go に対する @tanakh さんの発言まとめ

                                            「NTPsecに採用するプログラミング言語をRustかGo言語で悩んでいるが、Go言語の方が有力ではないか」というNTPsec公式ブログ記事「Rust vs. Go」 https://blog.ntpsec.org/2017/01/18/rust-vs-go.html に対する @tanakh さんの反応

                                              Rust vs. Go に対する @tanakh さんの発言まとめ
                                            • Rust ツアー - Let's go on an adventure!

                                              こんにちは、 Rust ツアーへようこそ。 これはプログラミング言語 Rust の機能を段階的にガイドすることを目的としています。 Rust は学習曲線が急な言語だと見なされることが多いですが、 複雑な事項に進む前に探ることがたくさんあると納得していただければと思います。 このガイドは以下の言語で見ることができます。 Deutsch English Español Français Interlingue Magyar Polski Português Brasileiro Română Русский 简体中文 繁體中文 日本語 한국어 Türkçe Українська ภาษาไทย Tiếng Việt コンテンツへの提案や翻訳に貢献したい場合、 Rust ツアーの github リポジトリをチェックしてください。 キーボードの ⬅️ と ➡️ でツアーをナビゲートできます。 この

                                              • Linuxカーネルが難しい?Rustで実装しよう!. 「カーネル開発者になりたい!」 | by FUJITA Tomonori | nttlabs | Jul, 2020 | Medium

                                                「カーネル開発者になりたい!」 クラウドネイティブ世代の皆様は、何を言っているのか理解できないと思いますが、一昔前は、Linuxカーネル開発の魅力におぼれたエンジニアがたくさんいました。クラウドファースト時代に、誰もやってないだろうと、軽い気持ちで試すと、今もひっそりと生息しているカーネル開発者に、一晩中、指導をうけるはめになりかねません。前例のないRustなら安心です。 RustでLinuxカーネルモジュールが実装できるRustでカーネルモジュールを実装する利点Rustへの愛だけが理由ではなく、カーネル開発にRustを用いると、様々なバグを減らすことができそうという利点があります。例えば、動的なメモリ管理で、うっかり、解放を忘れるとか、解放した後に使ってしまうと、往々として、辛いデバッグになります。 Rustで実装した簡単なカーネルモジュールRustのカーネルモジュール開発フレームワーク

                                                  Linuxカーネルが難しい?Rustで実装しよう!. 「カーネル開発者になりたい!」 | by FUJITA Tomonori | nttlabs | Jul, 2020 | Medium
                                                • この一年やったこと、継続していること (Rust とか 英語とか) - from scratch

                                                  前回エントリを踏襲し、さらに一年間どんな事をやったか、という話を書こうかなと。 yosuke-furukawa.hatenablog.com 一年間やったことを振り返ると、英語と競技プログラミング、その過程で Rust をやっていました。 競技プログラミング系 LeetCode この一年間でトータルで解いた問題が806問になりました。これまで JavaScript で解いてたやつを Rust で解き直したりしてたので、解答数はそこまで増えてないのですが、 Rust の勉強と割り切っていたので、目標としては良かったかなと思います。 github.com LeetCode の戦績 一年間ずっとやったことで、金バッジをもらいました。 LeetCode Annual Badge ただ競技プログラマーとしてなにか成長したかと言うと、前回よりは解けるものの、「解けない問題が解けるようになった」というよ

                                                    この一年やったこと、継続していること (Rust とか 英語とか) - from scratch
                                                  • Announcing Rust 1.0 | Rust Blog

                                                    Today we are very proud to announce the 1.0 release of Rust, a new programming language aiming to make it easier to build reliable, efficient systems. Rust combines low-level control over performance with high-level convenience and safety guarantees. Better yet, it achieves these goals without requiring a garbage collector or runtime, making it possible to use Rust libraries as a "drop-in replacem

                                                      Announcing Rust 1.0 | Rust Blog
                                                    • Rust+Webフロントの最前線!tauriを試してみた

                                                      @Pctg_x8です。 Deno 1.0の登場でRustとWeb関連技術の繋がりがより高まっていく中で、Electronライクな新しいアプリケーションフレームワークである「tauri」を見つけましたのでちょっと触ってみようと思います。 tauriについて 公式サイト: https://tauri.studio/ ※この記事ではv0.9.2をベースに解説しています。 tauriはまだメジャーバージョンが1になっていないため、頻繁にAPIの変更が起こる可能性があります。 概要 フロントはElectronと同じくWebViewですが、ベースの起動プログラム(Main Process)をRustで書くことができるものです。 ElectronではMain ProcessもJavaScript(Node.js)なので、例えば大量のデータを並行してバッと読むとか解析するとかの処理をさせようとすると マル

                                                        Rust+Webフロントの最前線!tauriを試してみた
                                                      • PythonとRustの融合:PyO3/maturinを使ったPythonバインディングの作成入門 | gihyo.jp

                                                        Cargo.tomlにはデフォルトのメタデータとPyO3の依存関係(バージョン)などが記載されています。また、pyproject.tomlにはビルドツールとしてmaturinが使用されることなどがあらかじめ定義されています。 注目すべきはRustスクリプトを記述するsrc/lib.rsファイルです。以下のようなscaffold(足場)が最初から記載されています。 src/lib.rsにデフォルトで記載されているscaffold 1 use pyo3::prelude::*; 2 3 /// Formats the sum of two numbers as string. 4 #[pyfunction] 5 fn sum_as_string(a: usize, b: usize) -> PyResult<String> { 6 Ok((a + b).to_string()) 7 } 8 9

                                                          PythonとRustの融合:PyO3/maturinを使ったPythonバインディングの作成入門 | gihyo.jp
                                                        • 安定化間近!Rustのimpl Traitを今こそ理解する - 簡潔なQ

                                                          概要: impl Trait が安定化間近である。これはトレイトオブジェクトと似た用途を持つが、静的ディスパッチされSizedのまま使えるため効率的である。 impl Trait が安定化間近 Rustでは新規の機能はまずnightlyバージョンに「不安定機能 (unstable feature)」として取り入れられます。そこでの実験を経て、プログラミング言語Rustに半恒久的に導入してもよいと合意されたものだけが「安定化 (stabilize)」され、betaやstableバージョンのコンパイラでも使用できるようになります。 さて、現在 「impl Trait」と呼ばれる機能の安定化のめどがたったというアナウンスがありました。この機能は2016年夏ごろに実装され、長い間待ち望まれてきた目玉機能のひとつでしたが、ここにきてようやっと、という感じです。そこで、 impl Trait について

                                                            安定化間近!Rustのimpl Traitを今こそ理解する - 簡潔なQ
                                                          • Rustに貢献してみませんか?コントリビューターたちが語る開発の裏側とOSS活動の魅力 - Findy Engineer Lab

                                                            「効率的で信頼できるソフトウェアを誰もが作れる言語」を提唱するプログラミング言語・Rust。その優れたパフォーマンスやプログラムとしての信頼性・生産性の高さなどから、近年非常に人気を集めています。 Rustのようなオープンソースソフトウェア(以下、OSS)の開発を支えているのは、機能開発やドキュメント整備など、プロジェクトに何らかの形で貢献をするコントリビューターたちです。今回はRustのコアコミッターである大櫛佑貴さんとTaKO8Kiさんに、知られざるRust開発の裏側とOSS活動に携わる魅力について聞きました。 * … 取材はリモートにて実施しました。 Rustに触れたきっかけ ――今回のインタビューでは、お二人のコントリビューターとしての活動内容を伺います。まずは、ユーザーとしてRustを書くようになったきっかけを教えてください。 大櫛:Rustとの出会いは2018年頃でした。私がま

                                                              Rustに貢献してみませんか?コントリビューターたちが語る開発の裏側とOSS活動の魅力 - Findy Engineer Lab
                                                            • Rust でバイナリを配布する

                                                              これは天久保 Advent Calendar 2022 二日目の記事です。明日は休日なのでやすみです。 本記事は全部 GNU/Linux においての話で、ELF 実行可能形式のファイルのことを指してバイナリと呼びます。 Rust で書いたプログラムをビルドして配布したいことがあるでしょう。サーバーアプリケーションなどとなればコンテナイメージを配布するのがまっとうに思えますが、コマンドラインアプリケーションとなると実行の手軽さや起動オーバーヘッドへの配慮からやはりバイナリを配布する必要が出てくると思います。一方で Rust でビルドしたバイナリは[1]システムの glibc に動的リンクされており、可搬性が低い可能性があります。つまり、ビルドした環境より glibc のバージョンが低い環境でそのバイナリは動かない可能性があるということです。実例を見てみましょう。下のプログラム[2]は Deb

                                                                Rust でバイナリを配布する
                                                              • Rustの所有権(ownership)を語義から理解する - igagurimk2の日記

                                                                所有権(ownership)と借用(borrowing)とライフタイム(lifetime)はRust特有の言語仕様として有名である。 Rustではガベージコレクション(GC)を使用せずにメモリ安全性を確保するために所有権と借用とライフタイムの仕様を採用している。 この機構によって、Rustではプログラマが変数の値が有効である範囲を意識する必要がある代わりに、GCに関する実行時のオーバーヘッドがなくともメモリ安全でありスレッドセーフであるプログラムを記述することができる。 一方で、所有権は「『変数が値の所有権を持っている』というのは結局何のことなのかわからない」という混乱を生む要因でもある。 単純に考えると、変数に値が入っているのだから、変数が値を持っているのは当然のことのように思える。 そうすると、「値の所有権を持つ」とは一体何のことを言っているのかがはっきりとしなくなってしまう。 この混

                                                                  Rustの所有権(ownership)を語義から理解する - igagurimk2の日記
                                                                • Rustで作るフルスクラッチQEMU型エミュレータ

                                                                  Introduction of Technologies and People Supporting RISC-V Ecosystem

                                                                    Rustで作るフルスクラッチQEMU型エミュレータ
                                                                  • 【ブクマ推奨】Rust、Go言語、コンテナ技術、PHP…言語系LT動画8本公開🎉 — TechFeed Conference「後夜祭」(5)

                                                                    「TechFeed Conference 2022後夜祭」第5弾!今回からはプログラミング言語のLTが中心!Rust、Go言語、コンテナ技術、PHPに関するLT動画を8本公開です! こんにちは、TechFeed CEOの白石です。 2022年5月14日に開催された「エンジニアの祭典」TechFeed Conference 2022は、「日本を代表するテックエキスパート50名による大LT大会」という前代未聞の取り組みとして、大盛況のうちに幕を閉じました。 ですが、TechFeed Conferenceはまだまだ終わりません! 本イベントは、エキスパートの貴重な知見を一人でも多くの方々に届けるべく、企画当初から 「全セッション、永久保存版」 を掲げて、アーカイブ化にも全力を尽くすと誓っておりました。 本日より6/10までの間、「TechFeed Conference 2022後夜祭」を開催しま

                                                                      【ブクマ推奨】Rust、Go言語、コンテナ技術、PHP…言語系LT動画8本公開🎉 — TechFeed Conference「後夜祭」(5)
                                                                    • RustにおけるfutureとgRPC | POSTD

                                                                      (編注:2020/08/18、いただいたフィードバックをもとに記事を修正いたしました。) 本記事は、Tang Liu(tl@pingcap.com)が「Bay Area Rust Meetup August 2017」で行った講演内容をまとめたものです。 動画はこちらからご覧いただけます 。 講演者の自己紹介 非同期プログラミング なぜ同期にしないのか なぜ非同期にするのか コールバック地獄 コルーチンで簡単に書く もう1つの方法、future Rustにおけるfuture Futures コンビネータ 同期 Stream Sink Task gRPC なぜgRPCを使うのか HTTP/2 gRPCのベースはHTTP/2 futureとgRPCを組み合わせる C gRPCのキーワード 疑似フロー 単一通信 クライアントストリーミング サーバストリーミング 双方向ストリーミング 単一通信fu

                                                                        RustにおけるfutureとgRPC | POSTD
                                                                      • この1年Rustをゲーム開発に使ってみた感想 - Qiita

                                                                        Advent Calendarということで、この1年かけてちまちまRustでゲームを作ってきたことに関して考えたことを書いていきます。Rustをゲーム開発に使って感じた、Rustの長所と短所を自分なりにまとめていきます。具体的にゲームはこうして作るものだ、といった技術的な話ではありませんが、よろしければお付き合いください。 何を作ったか GitHubの次のページにて公開しています。 スクリーンショット 作成したのは、2Dドット絵のローグライクゲームです。描画や入出力機能はSDLに依存しますが、他はほぼ全てRustで作成したものです。未完成品ではありますが、基本的な探索や戦闘、アイテム、会話、店なんかは実装してあります。さびた(rusted)遺跡(ruin)を探索するゲームということで、Rusted Ruinsと命名しています。 なぜRustで作ったか プログラミングができてゲームも好きなら

                                                                          この1年Rustをゲーム開発に使ってみた感想 - Qiita
                                                                        • IBMがRustを使ってNode.jsのプロジェクトを書き換え。その背景とは?

                                                                          IBMがRustを使ったソフトウェア開発を加速している。RustはMozilla Foundationが開発をリードするオープンソースのプログラミング言語だ。Rustの歴史はまだ浅いものの、DropboxやCloudflare、Microsoft、Facebookなどの多くの企業で利用が拡がっている。Microsoftが社内で2004年から統計を取った調査によれば、自社が開発したソフトウェア(C、C++を利用)における脆弱性のうち約70%がメモリーの操作に由来するとして、メモリーセーフなRustを採用する流れになっているという。

                                                                            IBMがRustを使ってNode.jsのプロジェクトを書き換え。その背景とは?
                                                                          • 『手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた』を読みました - Don't Repeat Yourself

                                                                            先日発売になった『手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた』を、一通り目を通していました。感想を記しておきます。なお感想は、例のごとく全体に軽く目を通して、いくつかサンプルプログラムを写経してみた程度の上でのものです。あらかじめご了承ください。 手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた 作者:クジラ飛行机ソシムAmazon Python から Rust に入門するという切り口 最近はRustの本が多く出版され始めており、読むよりも買うほうがだんだん多くなってきてしまっています。とくに単なる言語の入門にとどまらず、さまざまな切り口から解説する本が増え始めているように思います。本書もそのひとつで、Python から Rust に入門しようという非常に特異な切り口の一冊です。 Python から Rust という切り口は、多少なりと

                                                                              『手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた』を読みました - Don't Repeat Yourself
                                                                            • Rustで有名アルゴリズムに挑戦(18) Rustでライフゲームを作ってみよう

                                                                              C言語に代わってOS開発に採用されているRust。本連載では、Rustで有名アルゴリズムを実装して、Rustについての理解を深めています。今回扱うのは、生物の栄枯盛衰をシミュレーションするライフゲームです。 コンウェイのライフゲームで生物のシミュレーションをしよう コンウェイのライフゲームとは? 「ライフゲーム(Life Game)」は、イギリスの数学者コンウェイによって考案されたもので、簡単な配列操作によって実装できる簡単な生物のシミュレーションです。次のように動きます。 コンウェイのライフゲームを動かしているところ 見た目が面白いのに加えて、プログラミング言語の性質や特徴を知るのにもってこいの題材であるため、次の姉妹連載でも何度か紹介しています。ぜひ、今回のRust版と見比べてみてください。 - Python連載9回目(https://news.mynavi.jp/techplus/a

                                                                                Rustで有名アルゴリズムに挑戦(18) Rustでライフゲームを作ってみよう
                                                                              • Rust で WebAssembly を出力する

                                                                                もう結構前になりますが、Rust で Emscripten を利用することなく WebAssembly の出力ができるようになりました。それにより、Rust を使った WebAssembly の開発が現実的な選択肢としてさらに力を帯びてきました。 自分の勉強で Rust から WebAssembly に出力するプログラムを書いてみたので、その道筋をご紹介することで自分のような Rust 初心者の方々の WebAssembly 開発の助けになればと思い、この記事を投稿しました。 もし記事中に間違い等がありましたら、是非 @tkihira までご連絡ください。 Emscripten との依存関係を切った Rust つい最近まで、WebAssembly の出力は Emscripten を使うことがほとんどでした。Emscripten は、元々は他言語のプログラムを JavaScript に変換す

                                                                                • フランスのデータセンターで火災…『Rust』に復元不可能なデータロストが発生するなど大規模被害に発展 | Game*Spark - 国内・海外ゲーム情報サイト

                                                                                    フランスのデータセンターで火災…『Rust』に復元不可能なデータロストが発生するなど大規模被害に発展 | Game*Spark - 国内・海外ゲーム情報サイト