並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 414件

新着順 人気順

Rustの検索結果41 - 80 件 / 414件

  • 多くのプログラミング言語に危険な脆弱性 ~Windows環境の引数エスケープ処理に不備「Rust」「PHP」「Node.js」「Haskell」などに影響/

      多くのプログラミング言語に危険な脆弱性 ~Windows環境の引数エスケープ処理に不備「Rust」「PHP」「Node.js」「Haskell」などに影響/
    • Best Rust Web Frameworks to Use in 2023

      Best Rust Web Frameworks to Use in 2023 In the dynamic landscape of web development, Rust has emerged as a language of choice for building safe and performant applications. As Rust's popularity grows, so does the array of web frameworks designed to harness its strengths. This article compares some of the best Rust frameworks highlighting their respective advantages and drawbacks to help you make i

        Best Rust Web Frameworks to Use in 2023
      • Rustのデータ可視化ライブラリCharmingに入門した

        Charmingとは Charmingは、Rustの強力なチャートレンダリングライブラリです.美しく高品質なデータ可視化します.GitHub上で以下のようなグラフが紹介されています. 後述しますが,このCrateは適切にStructが分割されているので,可読性の高い可視化用のコードを作ることができます. 簡単に散布図を作成する Datasaurusのデータを使います.ここでは,csvファイルをダウンロードして使っています. もちろん表示するのはdinoです. この記事では,cargo new project_nameした後に,data dirとoutput dirを作っていることを想定します.

          Rustのデータ可視化ライブラリCharmingに入門した
        • Unityが新料金システムは「料金面でほとんどの開発者に影響はない」と再々説明。『Rust』や『Slay the Spire』開発者らが“信頼失墜”として怒る中説明に奔走 - AUTOMATON

          Unity Technologiesは9月12日、ゲーム開発プラットフォーム「Unity」について、各提供プランの利用料金に加えて、ゲームのインストール数を基準とする「Unity Runtime Fee」を2024年1月1日から導入すると発表。これを受けて、Unityを利用するゲーム開発者は困惑や不満をあらわにしている。 Unityから別のエンジンに移行すると表明する人気作品の開発者も続出するなか、Unity Technologiesは9月14日、公式Xアカウントにて声明を投稿。「Unity Runtime Fee」の仕組みについて、各所に散らばっていた情報をまとめるかたちで改めて説明している。 発表後すぐさま物議を醸す Unity Runtime Feeは、利用者が開発したゲームがエンドユーザーによってダウンロード・インストールされた回数を基準として適用。ゲームの過去12か月の収益が最小

            Unityが新料金システムは「料金面でほとんどの開発者に影響はない」と再々説明。『Rust』や『Slay the Spire』開発者らが“信頼失墜”として怒る中説明に奔走 - AUTOMATON
          • サーバサイドのJavaScriptランタイム「WinterJS」登場。Rustで書かれ、WebAssembyにコンパイル可能なService Workerサーバ

            サーバサイドのJavaScriptランタイム「WinterJS」登場。Rustで書かれ、WebAssembyにコンパイル可能なService Workerサーバ WebAssemblyランタイム「Wasmer」の開発元として知られているWasmer社は、新しいサーバサイドのJavaScriptランタイム「WinterJS」を発表しました。 Announcing WinterJS: a blazing-fast Javascript Service Workers server written in Rust powered by SpiderMonkey ❄️https://t.co/kX7jjJj6qv — Wasmer (@wasmerio) October 27, 2023 WinterJSはRustで書かれた高速なService Workerサーバであり、オープンソースとして公開さ

              サーバサイドのJavaScriptランタイム「WinterJS」登場。Rustで書かれ、WebAssembyにコンパイル可能なService Workerサーバ
            • 思考のスピードでコードを書け!!Rust製の次世代エディタ「Zed」

              はじめに 周りとは一味違ったツールを使いたくなるお年頃、皆さんも経験されたことがあるかと思います。 え、ない? 今回は「Code at the speed of thought(思考のスピードでコードを書く)」というキャッチコピーを掲げているエディタ「Zed」を発見したので紹介していこうと思います。

                思考のスピードでコードを書け!!Rust製の次世代エディタ「Zed」
              • プログラミング言語Rustになぜ注目するのか - Qiita

                この記事は NTTコムウェア AdventCalendar 2023 5日目の記事です。 自己紹介&動機 高鶴と申します。NTTコムウェア コーポレート革新本部で、プログラム設計~コーディング~ユニットテストにかかわる技術の社内標準化をやっております。 プログラムの静的な解析で早期にバグを発見・修正することで、後工程でのバグ対処コスト削減(ウォーターフォール開発の場合)や、技術的負債の早期解消(アジャイル開発の場合)を目指す、というのが私のチームの仕事の大きな一部となっています。 静的な解析で早期にバグを発見するツールには、オープンソースでも商用でも様々なものがあります。しかし、ソフトウェアの品質をより抜本的に良くしていこうと思うと、「プログラミング言語を何とかする」というところを考えたくなってきます。 Rustであれば、そのような期待に応えてくれるのではないかと期待し、調査・検証を始めま

                  プログラミング言語Rustになぜ注目するのか - Qiita
                • 3Dモデルの配信サーバーでRustとZstandardを採用して数倍のパフォーマンス向上を実現した - pixiv inside

                  はじめに こんにちは、VRoid部所属のエンジニアのyueです。 この度VRoid Hubで3Dモデルの配信サーバーの見直しを行い、技術選定から始めRustとZstandard (zstd)を採用した実装に切り替えました。 結論から見るに従来のNode.js製サーバーと比べて以下のことを実現しました。 最大のレスポンス時間が 1.5 ~ 2.5s から 300 ~ 400msまで低下 平均のレスポンス時間が 700 ~ 800ms から 150 ~ 200msまで低下 サーバーのCPU使用率が ~ 50% から ~ 10%まで低下 docker image のサイズが ~ 346mb から ~ 21mb程度まで削減 配信されるファイルサイズが平均 10 ~ 20% 軽量化されました レスポンス時間 CPU使用量 (上からAVG(MAX), AVG, AVG(MIN)) メモリー使用量に関し

                    3Dモデルの配信サーバーでRustとZstandardを採用して数倍のパフォーマンス向上を実現した - pixiv inside
                  • 『詳解Rustアトミック操作とロック』(Rust Atomics and Locks) - Don't Repeat Yourself

                    昨年買っていたんですが、年末年始の時間を使って少し読めました。 著者はRustコンパイラにコントリビューションをしたことがあれば誰でも知っているかもしれない、Mara Bos氏です。 ちなみにですが、原著は下記サイトで無料でも読むことができます。 marabos.nl 書籍は下記です。 詳解 Rustアトミック操作とロック ―並行処理実装のための低レイヤプログラミング 作者:Mara Bosオーム社Amazon なおこの記事内で「本書」と明記する場合、それは『詳解Rustアトミック操作とロック』を指します。また、「筆者」は私自身のことであり、「著者」はMara Bos氏のことです。 内容のメモ 1章 2章 3章 4章、5章 6章 Miri Loom 7章 8章 9章 10章 感想 日本語での別の資料 内容のメモ 読んだ内容のうち、印象に残ったり初見だったものをメモしておきます。 1章 1章

                      『詳解Rustアトミック操作とロック』(Rust Atomics and Locks) - Don't Repeat Yourself
                    • Rustで作るプログラミング言語—— コンパイラ/インタプリタの基礎からプログラミング言語の新潮流まで

                      この本の概要 小さなプログラミング言語から本格的なプログラミング言語へ……ステップバイステップでの開発を通して,プログラミングそのものへの理解を深めよう! こんな方におすすめ コンピュータサイエンス,とくにプログラミング言語そのものやコンパイラについての素養を得たいと考えている人 他言語でのプログラミング経験があり,Rustの習得に興味のある人。とくに,学習のための題材を探している人 第1章:プログラミング言語概論 プログラミング言語の分類 他の切り口での分類方法 コンパイルパイプライン 第2章:スタックベース仮想マシン 仮想マシン概論 Rustでの実装 標準入力からの読み込み パースとコマンドの実行 ブロックとネスト構造 if制御構文 変数の定義 複数行のソースコードへの対応 関数呼び出し 関数の再帰呼び出し WebAssemblyへのコンパイルとブラウザでの実行 第3章:プログラミング

                        Rustで作るプログラミング言語—— コンパイラ/インタプリタの基礎からプログラミング言語の新潮流まで
                      • JavaScript/TypeScript向け静的解析ツール「Oxlint」が正式に公開、Rustの採用で大幅に高速化

                        Oxlintは、JavaScriptやTypeScriptのコードを調べ、エラーにつながりやすい書き方となっている部分や、必要のない部分を指摘する機能を持っている。この用途では「ESLint」が事実上の標準となっているが、100%JavaScriptで記述してあるため、実行速度が問題となっている。 Oxlintでは、プログラムを記述する言語にRustを選ぶことで処理速度を大きく引き上げた。さらに、並列処理に対応し、コンピュータのプロセッサが搭載するコアの数が増えるに従って性能が上がっていく設計になっている。さらに、テスト結果のメッセージをシンプルかつ分かりやすいものにした点も特徴として挙げられる。 正式版になる前からOxlintを試験的に使っていた米Shopifyの担当者は、ESLintを使っていた頃は自社開発のコードをテストするのに75分かかっていたが、Oxlintを使ったところ、10秒

                          JavaScript/TypeScript向け静的解析ツール「Oxlint」が正式に公開、Rustの採用で大幅に高速化
                        • Introduction - Rust 101

                          ⓘ A guide to aid you in your journey of becoming a Rustacean (Rust developer). See the Contributing and Code of Conduct for more information about how to contribute to this repository. Ready to start your learning journey? Read the prologue next or jump straight to the introduction of this learning guide. Disclaimer This guide is made by Glen De Cauwsemaecker and is in no way endorsed nor affiliat

                          • Introduction - Rust Full Stack Workshop

                            Welcome to the this workshop! In this hands-on workshop, we will guide you through the process of building a full stack application using Rust for the API, Actix-Web as the web framework, SQLx for database connectivity, Dioxus for the front-end, and Shuttle for deployment. This workshop assumes that you have a basic understanding of Rust and its syntax. Throughout the workshop, you will learn how

                            • Rustで将棋の局面画像生成、そしてCDN Edgeで動的生成 - すぎゃーんメモ

                              背景 先行・類似事例 自作のメリット Rustで局面画像生成 盤・駒画像の素材 画像処理 入出力 Generatorと下準備 Publish Web Appで使う CDN Edgeで動かす wasm-packでWebAssembly作成 Deno Deploy Vercel Edge Functions Cloudflare Workers Fastly Compute@Edge その他 まとめ Repository 背景 ATrium という AT Protocol のためのライブラリを自作している が、まったくドッグフーディングしていなかった ので、Blueskyに詰将棋の問題を放流するBotを作ってみることにした gfx氏が作ったBot を参考に というわけで、詰将棋の問題の局面を画像で投稿したい が、あまり自分好みの画像を生成できるライブラリやWebサービス等がない ので、結局それ

                                Rustで将棋の局面画像生成、そしてCDN Edgeで動的生成 - すぎゃーんメモ
                              • 詳解 Rustアトミック操作とロック

                                Rustでは並行性を持つプログラムを安全に記述することができます。本書はその並行プログラムの基盤となる、アトミック操作とロックの仕組みについての理解を深め、より安全で効率の良いコードを書くための指南書です。難解だと思われがちなアトミック処理、ロック、メモリオーダリングのような低レイヤを詳細に理解し、アーキテクチャやOSによる相違を知ることで、安全で高性能な並行処理プログラムを実装できるようになります。Rustユーザはもちろん非ユーザにとっても低レイヤプログラミングの優れたリソースとなる一冊です。 序文 まえがき 1章 Rust並行性の基本 1.1 Rustのスレッド 1.2 スコープ付きスレッド 1.3 所有権の共有と参照カウント 1.3.1 static 1.3.2 リーク 1.3.3 参照カウント 1.4 借用とデータ競合 1.5 内部可変性 1.5.1 Cell 1.5.2 RefC

                                  詳解 Rustアトミック操作とロック
                                • 趣味Rustから業務Rustへ

                                  こんにちは!プロダクト開発部の熊谷です。 Fairy Devices(フェアリーデバイセズ) の 入社エントリ を書きます!! 背景 私が Rust に出会ったのが2019年。それまでは C, C# をよく書いていましたが、 Rust の型システムやメモリ安全性、パフォーマンスに魅了され、ますます没頭していきました。 当時学生だったわけですが、新卒時は Rust にこだわらず仕事の安定性を求めて、 SIer 業界に就職しました。 そこで働きつつ、こんなことを思っていました 業務でも Rust を書きたい! 自社製品を開発したい! 5000兆円欲しい! 業務経験も乏しい上に Rust の求人はまだ少なく狭き門になると考え、個人開発や勉強会への参加など頑張っていました。 そんなとき、 Rust.Tokyo で当社の存在を知り、入社に至りました。 何をやっているか mimi®クラウドAI のサー

                                    趣味Rustから業務Rustへ
                                  • C++からRustに移行して幸せになる人、そうならない人 その違いは?

                                    C++はRustが登場する前から成熟度の高い言語だった。開発者はC++からRustに切り替える必要があるのだろうか。必ずしもそうとは限らない。C++とRustの品質、両言語の相違点と類似点を調べて、どちらのプログラミング言語を選ぶかを決めたい。 C++はRustが登場する前から成熟度の高い言語だった。開発者はC++からRustに切り替える必要があるのだろうか。必ずしもそうとは限らない。 新たなプロジェクトに携わるプログラマーは、プログラミング言語の選択肢が不足することはない。プログラミング言語「C++」と「Rust」は、 ブラウザベースのソフトウェアからビデオゲームに至るまで、さまざまなプロジェクトに適しており、それぞれに利点がある。 C++は効率的で信頼性の高いプログラミング言語だ。信頼性、パフォーマンス、スケーラビリティの高さから開発者はC++を選ぶ。C++の標準テンプレートライブラリ

                                      C++からRustに移行して幸せになる人、そうならない人 その違いは?
                                    • RustによるマクロサービスフレームワークSpin入門

                                      この記事はAdvent of Spin 2023というオンラインチャレンジに参加した結果してSpinに入門した結果のまとめとなっています。学んだことのまとめですが、Spin入門としても利用いただけるかなとも思っています。 TL;DR マクロサービスフレームワークのSpinをつかって、Rustでマイクロサービスを作ります。 JSONのやり取りや、key-valueストアの利用、ルーティングがカバーされています。 Hurlというツールを使ってテストファースト開発します。 Spinとは? Spinとはマイクロサービスを作成するためのフレームワークで次の特徴があります。 イベント駆動型のフレームワーク HTTP(S)とRedisにデフォルトで対応 いくつかのストレージに標準で対応 イベントハンドラーはWasmコンポーネントとして実装される WASI preview 2に対応 開発元が配布しているコ

                                        RustによるマクロサービスフレームワークSpin入門
                                      • 新たなプログラミング言語を習得したい人にオススメ! プログラミング言語「Rust」の基礎をしっかり学べる無料の電子書籍

                                        2015年にバージョン1.0に到達した「Rust」は、比較的新しいプログラミング言語です。2019年には、Microsoftが「Windows」の開発にRustを採用すると発表したり、Googleが「Android 12」の開発から、「C/C++」の代わりにRustを採用したりしたことも記憶に新しいのではないでしょうか。 本eBookでは、連載「基本からしっかり学ぶRust入門」全18回を収録。Rustとはどのような言語なのかに始まり、なぜMicrosoftやGoogleがRustに注目したのか、Rustは他のプログラミング言語とどう違うのか、言語の特徴や、開発環境の構築方法、記述方法まで紹介しています。 本eBookの前半では、Rustの特徴や基本文法を、後半では、Rustを使ったアプリケーションを開発する際のフォルダ構造や、テストの記述方法も紹介しています。各回ともサンプルコードととも

                                          新たなプログラミング言語を習得したい人にオススメ! プログラミング言語「Rust」の基礎をしっかり学べる無料の電子書籍
                                        • RustとDioxusで投稿アプリのSPAを作ってみよう

                                          Dioxusの概要 Dioxus(ディオクサス)は、Dioxus Labsによるクロスプラットフォーム対応のアプリを構築できるRustライブラリです。移植性が高く(portable)、高性能で(performant)、人間工学に基づいた(ergonomic)設計が特徴とされています。Dioxusでは、単一のコードで以下のプラットフォームで動作するアプリを開発可能です。 (1)Web WebAssembly技術を用いたSPA(Single Page Application)を開発できます。WebAssemblyについては@ITの連載「いろんな言語で試す、WebAssembly入門」で紹介しています。その第5回「RustでWebAssembly――「Rust and WebAssembly」を体験する」でRust and WebAssemblyを紹介しています。本記事の理解にWebAssemb

                                            RustとDioxusで投稿アプリのSPAを作ってみよう
                                          • Rustで自作シェル書いてみた

                                            はじめに 自作シェルを書いてみた記事はよく見かけるのですが、そのほとんどが fork -> exec という流れです。仕組みを学ぶという点で非常に有効なのでそれはそれで良いとして、 Rust では標準ライブラリの std::process::Command を使用してもっと簡単にコマンド実行ができるよ! という記事があまりないので書いてみました。 コマンドの実行 REPL パース処理はできるだけシンプルに書きます。 標準入力から1行読み取り、Command::spawn() で実行します。 それを繰り返すのが REPL (Read-Eval-Print Loop)です。 これだけでシェルと言い張っても良いと思っています🤔 use std::io::{self, Write}; use std::process::Command; fn main() { loop { // プロンプト p

                                              Rustで自作シェル書いてみた
                                            • サーバレスにおけるRustについて - NTT Communications Engineers' Blog

                                              この記事は、 NTT Communications Advent Calendar 2023 22日目の記事です。 はじめに こんにちは、イノベーションセンターの鈴ヶ嶺です。普段は、クラウド・ハイブリッドクラウド・エッジデバイスなどを利用したAI/MLシステムに関する業務に従事しています。 本記事は、各クラウドベンダーのサーバレスにおけるプログラミング言語Rustについて調査・比較した結果を紹介します。 まず初めにサーバレスでRustを利用するメリットをエネルギー効率の観点から説明し、次に各クラウドベンダーの関連記事をピックアップします。 さらに、それぞれのクラウドでRustを使ったサーバレスアプリの代表的な作成方法を紹介して比較します。 Rustのエネルギー効率 Rustは、次の公式ページでも宣伝している通りパフォーマンスを強くアピールしています。 Rustは非常に高速でメモリ効率が高く

                                                サーバレスにおけるRustについて - NTT Communications Engineers' Blog
                                              • Misskeyの遅いから「Node.jsやめる(Rustにする?)」というissueが紛糾 | スラド オープンソース

                                                Twitter代替サービスとしてユーザーが急増してサーバーコストが問題となっているOSSのSNSプラットフォーム「Misskey」で、「Node.jsやめる(Rustにする?)」というissueが登録されて紛糾しているようだ(はてなブックマーク)。 Misskeyのメインである「Misskey.io」のインスタンスは、個人運営であるが現在CPU1416コア、メモリ2.8TBという途方もないスペックで稼働しているという(まとめダネ!)。こうした状況を受けてか、3日に「Node.jsやめる(Rustにする?)」というissueが「Node.jsはパフォーマンス上の問題があるため。Goとかでもいいけど」というコメントと共に登録されたようだ。 issueにはタレコミ時点で94件のコメントが寄せられている他、Twitterなどでも話題となっていたが、メモリ消費が削減できそうやおもしろそうという意見が

                                                • 第793回 自作のカーネルモジュールをRustで作る | gihyo.jp

                                                  第791回では基本的なカーネルモジュールの作り方とそれをDKMSに対応させる方法を紹介しました。今回はカーネルの新しい機能のひとつである「Rustでカーネルモジュールを作る方法」を紹介しましょう。 UbuntuカーネルにおけるRustの対応 Linuxカーネルでは、Kernel 6.1からプログラミング言語である「Rust」の機能が取り込まれました。これは「Rust for Linux」の成果で、カーネルの機能をC言語やアセンブラだけでなく、Rustでも書けるようにするというものです。メモリー安全性や強い静的型付けなどの特徴を取り込むことで、カーネルのセキュリティ問題の原因の多くを占めるメモリー関連の不具合に対して、一種の対策になることが期待されます。 あらゆるケースにおいてRustに置き換えられるというわけではありませんが、今後カーネルのコードを読み書きする上でC言語やアセンブラだけでな

                                                    第793回 自作のカーネルモジュールをRustで作る | gihyo.jp
                                                  • Rust Vs Go: A Hands-On Comparison

                                                    Matthias Endler - Consultant at Corrode.dev  • 27 September 2023 Oh no, not another 'Is Rust better than Go?' article. Seriously, haven't we all had our fill of these comparisons by now? But before you sigh in exasperation, hear us out! Many comparisons between Go and Rust emphasize their differences in syntax and the initial learning curve. However, ultimately, what matters is the ease of use for

                                                      Rust Vs Go: A Hands-On Comparison
                                                    • 徐々に高度になるリングバッファの話、をRustで試した - Qiita

                                                      上記のうちRingBuffer0,1,2,3の実装をしました。 RingBuffer0,1は特に実装の違いはありません。 RingBuffer2はマルチスレッド化のためProducerとConsumerの構造体を追加しています。 RingBuffer3はアライン調整のために_paddingフィールドを追加しました。 MultiThreadはもとのコードはcpuset(0,1)決め打ちだったので、それに合わせたものとcore idが違う(0,2)も実施しました。 実行結果 リファレンス(AMD Ryzen 7735HS) リファレンスとなるkumagiさんのコードをg++ -O2でビルドしました。 RingBuffer0_single: 1000000000 ops in 939 ms 1064962.726 ops/ms RingBuffer1_single: 1000000000 ops

                                                        徐々に高度になるリングバッファの話、をRustで試した - Qiita
                                                      • Rustソースコードのざっくりとした歩き方

                                                        ざっくりRustコンパイラにコントリビュートするには何から始めればいいのかと、Rustコンパイラのソースコードの概要についてRustコンパイラの開発者視点で話します。 本記事は、TechFeed Experts Night#24 〜 プログラミング言語をつくる・解析する ー 言語界隈をエキスパートが語るのセッション書き起こし記事になります。 イベントページのタイムテーブルから、その他のセッションに関する記事もお読み頂けますので、一度アクセスしてみてください。 本セッションの登壇者 今日はこの「Rustソースコードのざっくりとした歩き方」というタイトルで発表したいと思います。 まず簡単な自己紹介です。TaKO8Ki(タコヤキ)というハンドルネームをよく使っていて、本名は前田喬之といいます。Rust界隈では、コンパイラーコントリビューターというチームで、Rustへのコミットをしていて、最近だと

                                                          Rustソースコードのざっくりとした歩き方
                                                        • Go, Ruby, Rust等の言語に存在した、Windows環境でコマンドインジェクションを引き起こす脆弱性"BatBadBut" - Flatt Security Blog

                                                          ※本記事は筆者RyotaKが英語で執筆した記事を、弊社セキュリティエンジニアkoyuriが日本語に翻訳したものになります。 はじめに こんにちは、Flatt SecurityでセキュリティエンジニアをしているRyotaK( @ryotkak )です。 先日、特定の条件を満たした場合に攻撃者がWindows上でコマンドインジェクションを実行できる、いくつかのプログラミング言語に対する複数の脆弱性を報告しました。 本日(2024/04/09(訳者注: これは英語版記事の公開日です))、影響を受けるベンダーがこれらの脆弱性に関するアドバイザリーを公表しました。 その影響は限定的なもののCVSSスコアは非常に高く、混乱が予想されるため、脆弱性に関する詳細を本記事にまとめます。 はじめに TL;DR CVSSスコア 技術詳解 根本原因 CreateProcessのラッパー cmd.exeのパース規則

                                                            Go, Ruby, Rust等の言語に存在した、Windows環境でコマンドインジェクションを引き起こす脆弱性"BatBadBut" - Flatt Security Blog
                                                          • Rustが再評価される:エコシステムの現状と落とし穴

                                                            垂直スケーラビリティと効果的なテストによる金融取引システムのパフォーマンスと効率の最大化 Peter Lawrey氏はJavaチャンピオンであり、Chronicle SoftwareのCEOとして、開発者を鼓舞してソリューションのクラフトマンシップを高めることに情熱を注いでいる。経験豊富なソフトウェアエンジニアとして、Lawrey氏はソフトウェア開発プロセスにおけるシンプルさ、パフォーマンス、創造性、革新性を奨励することに努めている。

                                                              Rustが再評価される:エコシステムの現状と落とし穴
                                                            • Google開発者1000人が答えた「Rustのウワサ」、習得に6カ月以上かかる? 実は遅い? は本当か

                                                              Google開発者1000人が答えた「Rustのウワサ」、習得に6カ月以上かかる? 実は遅い? は本当か:Rustに関する5つの洞察 Googleのプログラミング言語や低レベルOS、ユーザー体験を研究する2人の博士がプログラミング言語「Rust」に関する記事を投稿した。以下、その内容を要約する。 Rustは、2015年にバージョン1.0に達したばかりの比較的新しいプログラミング言語だが、多くの機能を備えている。Rustが提供するパフォーマンスと安全性の保証に注目している開発者は、これまで使用していたプログラミング言語の代わりにRustを使用できるかどうかを考えざるを得ない。 例えば、「大企業が既存の環境でそれを使用しようとするとどうなるか?」「開発者が言語を習得するのにどれくらい時間がかかるか?」「習得したら、生産性は高まるのか?」といった疑問がわく。 Googleでは、特にコンシューマー

                                                                Google開発者1000人が答えた「Rustのウワサ」、習得に6カ月以上かかる? 実は遅い? は本当か
                                                              • 【翻訳】Prettier を Rust で書き換えたプロジェクトに $20k の報奨金を支払うプログラムは Biome が勝ちました

                                                                この記事は vjeux 氏によって Prettier 公式ブログに投稿された「$20k Bounty was Claimed!」を許可をもらって翻訳したものです。 もとのタイトルを翻訳するのが難しかったので、できるだけわかりやすいものに翻訳しました。 PrettierというJavaScriptのコードフォーマッターは、人々がコードを書く様々な方法を慎重に扱うことで、驚くほど広く採用されています。この時点で、フォーマットロジックは安定しており、私たちの三項演算子に関する作業が完了すれば、それは満足のいく状態になるでしょう。 これは、次の重要な側面に注目できるということを意味します:パフォーマンス。Prettierは決して速いとは言えませんが、ほとんどの使用例には十分な速さです。これはいつも不満足な感じがしたので、何かをすることを望んでいました。それには、友好的な競争以上の方法はありません。

                                                                  【翻訳】Prettier を Rust で書き換えたプロジェクトに $20k の報奨金を支払うプログラムは Biome が勝ちました
                                                                • Small String Optimization で Rust ライブラリ ratatui を最適化した話 - はやくプログラムになりたい

                                                                  最近 ratatui という crate に Small String Optimization を利用した最適化を入れたので,その話を書きます. 目次 Small String Optimization (SSO) とは(SSO を既に知っている人は読み飛ばして大丈夫です) Rust で SSO を適用した文字列型を提供する crate 比較 SSO を利用して ratatui のメモリ効率と実行効率を最適化した話 compact_str crate の実装の最適化の話 インラインストレージに24バイト全てを使える理由 隙間最適化のための工夫 説明を簡潔にするため,特に断りが無い場合 64bit アーキテクチャを前提とします. Small String Optimization (SSO) とは Rust の可変長文字列型 String は文字列バッファへのポインタ,文字列の長さ,バッフ

                                                                    Small String Optimization で Rust ライブラリ ratatui を最適化した話 - はやくプログラムになりたい
                                                                  • Rustがサポートするアーキテクチャ少なすぎる!

                                                                    「RustでLinuxカーネルモジュールを実装しよう!」とはしゃいできましたが、実は、X86-64とLoongArchという2つのCPUアーキテクチャしかサポートされていません。近いうちに、ARM64もサポートされそうですが、Linuxカーネルがサポートする大半のアーキテクチャで、Rustは使えません。 Linuxカーネルの標準コンパイラのGCCは、CのソースコードをLinuxカーネルがサポートする様々なCPUアーキテクチャ用の実行ファイルに変換することができます。一方、Rustの公式コンパイラがサポートを保証しているCPUアーキテクチャはARM64とX86、X86–64だけです。 Rustの公式コンパイラがサポートしているアーキテクチャが少なすぎるということで、別のコンパイラを試してみました。 Rustの公式コンパイラRustの公式コンパイラは、コンパイラを実装するための基盤的なソフトウ

                                                                      Rustがサポートするアーキテクチャ少なすぎる!
                                                                    • Async Rust Is A Bad Language

                                                                      But to get at whatever the hell I mean by that, we need to talk about why async Rust exists in the first place. Let’s talk about: Modern Concurrency: They’re Green, They’re Mean, & They Ate My Machine Suppose we want our code to go fast. We have two big problems to solve: We want to use the whole computer. Code runs on CPUs, and in 2023, even my phone has eight of the damn things. If I want to use

                                                                        Async Rust Is A Bad Language
                                                                      • Rust製JavaScriptエンジン『Boa JS』を試してみた

                                                                        主要なJavaScriptエンジンのTest262を毎日実行して結果を載せているtest262.fyiというサイトがあります。 (Test262とは最新のECMAScriptを実装できているかどうかのテストです。) このサイトの、2024/6/5現在の実装率ランキングはこちらです。 test262.fyiの画面キャプチャ(2024/6/5) V8(ChromeやNode.js、Deno等)、JavaScriptCore(SafariやBun等)、SpiderMonkey(Firefox等)という、大手エンジンとほぼ横並びで4位に食い込んでいるBoaとは何者でしょうか。 Boaは公式曰く『Rustで書かれた実験的なJavascriptのレキサー、パーサー、コンパイラー』です。これだけ揃えば、JavaScriptエンジンと言って差し支えないと思います。RustアプリケーションにJavaScri

                                                                          Rust製JavaScriptエンジン『Boa JS』を試してみた
                                                                        • Rust製のPythonパッケージ管理ツール「uv」を使ってみよう | gihyo.jp

                                                                          それぞれのツールに関する詳しい説明は本記事では行いません。詳しく知りたい方は、ツール名のリンクから公式ドキュメント等を参照してみてください。 上記の表に挙げたツール群にはそれぞれに特徴があります。pyenv、venv、pipのように単一機能に特化したものから、Condaのようにデータサイエンスや機械学習プロジェクトで使用される複雑なパッケージの依存関係や環境管理をサポートするツール、PoetryのようにPythonパッケージインデックス(PyPI)への公開をサポートするツールなど、開発シーンに合わせて選択することができます。 uvとは uvは2024年の2月中旬に発表されたばかりの新しいパッケージ管理ツールです。Rustで書かれており、ここ最近で飛躍的に使用されるようになったRust製のPythonリンター&フォーマッター「Ruff」を開発しているAstral社によって提供されています[1

                                                                            Rust製のPythonパッケージ管理ツール「uv」を使ってみよう | gihyo.jp
                                                                          • Rustによる並列処理でDynamoDBへのデータ投入を20倍高速化してみた

                                                                            はじめに 言語として高速だと謳われているRust。そのRustを使用してDynamoDBへのデータ登録処理を直列処理と複数の並列アルゴリズム処理で速度比較してみました。 DynamoDB DynamoDBは公式で以下のように謳われています。 Amazon DynamoDB の応答時間は 1 桁ミリ秒で、最も要求の厳しいアプリケーションでも一貫してこのパフォーマンスを発揮できます。例を挙げると、2022 年の Amazon プライムデーに Amazon DynamoDB は、1 桁ミリ秒のパフォーマンスで、数兆回の API コールに対して 1 秒あたり 1 億 520 万件のリクエストを確実に処理しました。 上記だけみると爆速のようにも思われますが、読み込みと書き込み双方に以下の制限があります。 BatchWriteItemのデータ投入は1回で25リクエストまで、Queryのデータ取得は1回

                                                                              Rustによる並列処理でDynamoDBへのデータ投入を20倍高速化してみた
                                                                            • FireDBG - 🔥 Time Travel Visual Debugger for Rust

                                                                              🔥 Time Travel Visual Debugger for RustVisualize and debug Rust programs with a new lens

                                                                              • RustでWebアプリの実装にチャレンジしてみよう【準備編】

                                                                                本連載の目的 本連載は、@ITで2021年7月から連載された「基本からしっかり学ぶRust入門」(現在は完結)の応用編です。Rustは、当時から人気上昇中の言語と評価されていましたが、Stack Overflowが毎年実施している調査「Stack Overflow Developer Survey 2022」でも、変わらず「Rustが開発者の愛する言語」の1位に選ばれました。これは7年連続してのことです。この調査は、言語の好きと嫌いの差が大きいほど上位にランクされるので、Rustを嫌いな開発者は少数、という見方ができます。また、「これから使いたい言語」の1位も獲得しているようで、少なくとも開発者の間では今後も支持を伸ばしていきそうな言語と言えます。 Rustは美点の多いマルチパラダイム言語 Rustの美点は多岐にわたり、ネイティブコードコンパイラによる高速な実行バイナリ、所有権と借用の仕組

                                                                                  RustでWebアプリの実装にチャレンジしてみよう【準備編】
                                                                                • 他言語がメインの場合のRustの活用法 - csbindgenによるC# x Rust FFI実践事例

                                                                                  Rust.Tokyo 2023 https://rust.tokyo/2023/

                                                                                    他言語がメインの場合のRustの活用法 - csbindgenによるC# x Rust FFI実践事例