並び順

ブックマーク数

期間指定

  • から
  • まで

441 - 480 件 / 6382件

新着順 人気順

rustの検索結果441 - 480 件 / 6382件

  • Rustで始めるwebフロント開発。フロントエンジニアのためのRustメモリ管理入門

    この記事は、Supershipグループ Advent Calendar 2021の23日目の記事になります。 はじめまして。まさやんです。 普段はバックエンドをメインで書きつつ、フロント書いたり、AWSでインフラ構築したりと色々やらせてもらってます。 今回は、フロントエンドをメインにやってる人が、rustを始める時に参考になる記事を書こう!と思い立ち、書いてみました。 この前、JSConfの講演を聴いてて、rustの話もどんどん増えているなあと思ったのがきっかけです。 近いうちに、フロントの人もrust触れないとね〜、という時代になるかもなので、自身の学習も兼ねて整理してみました。 自分がつまずいたり、勉強する時参考になったなーという情報を整理して、最後にrustのフレームワークを紹介して終わりにします。 そこそこ長いので、休み休み読んでください。 対象読者 フロントエンドを書いていて、最

      Rustで始めるwebフロント開発。フロントエンジニアのためのRustメモリ管理入門
    • RustのgRPCがGoよりも遅い?

      夏のある日、GoのgRPCが、Rustよりも2倍早いという記事を見つけました。「おいおい、測定ミスだろ」と強がっていましたが、日々、不安は高まっていきます。真実の愛であれば、疑うことは許されませんが、エンジニアの言語への愛など、所詮、状況に応じて使い分けるような打算的な愛。確認してみました。 性能測定結果上記の記事と同じく、gRPCのサーバソフトウェアは、Goはgrpc-go、Rustはtonicのgreeterの性能を、gRPCのクライアントソフトウェアghzを使って、測定しました。ハードウェアは、AWSを利用し、サーバはc5a.8xlarge(32 vCPU/64 GiB)インスタンス、クライアントはc5a.16xlarge(64 vCPU/128 GiB)インスタンスを使いました。 1台のクライアントインスタンスは、同時に3,000個のgRPCクライアントを立ち上げ、合計で6,000

        RustのgRPCがGoよりも遅い?
      • Rust言語を、人命に関わるような決定的に安全性が重要なシステムに使用することをサポートする「Safety-Critical Rust Consortium」設立

        Rust言語を、人命に関わるような決定的に安全性が重要なシステムに使用することをサポートする「Safety-Critical Rust Consortium」設立 Rust言語を推進する「The Rust Foundation」は、人命や財産に関わるような安全性が決定的に重要になるシステムのためにRust言語を責任を持ってサポートするためのコンソーシアム「Safety-Critical Rust Consortium」の設立を発表しました。 Rust言語は、C言語のように低レイヤのシステム開発向けに作られたプログラミング言語です。 不正なメモリ領域を指すポインターなどを許容しない安全なメモリ管理や、マルチスレッド実行においてデータ競合を排除した高い並列性を実現している点などの特長を備えているため、安全かつ高速なアプリケーション開発を実現します。 セーフティ・クリティカルとは? 「セーフティ

          Rust言語を、人命に関わるような決定的に安全性が重要なシステムに使用することをサポートする「Safety-Critical Rust Consortium」設立
        • WebAssembly 開発環境構築の本

          この文章は Rust を用いた WebAssembly の開発環境を構築する手法を紹介するために作成されました. ハッシュタグ: #WASMの本紹介記事: WebAssembly 開発環境構築の本を公開しました - mizdra's blog# 本書の目的Rust を用いた WebAssembly の開発環境を構築する手法を知ることモジュールバンドラと連携する方法を知ることTypeScript と連携する方法を知ることWebAssembly を利用していて陥りやすい罠を知ることWebAssembly に関する情報を調べる方法を身につけること# 本書でやらないことWebAssembly/Rust/JavaScript の文法や機能の解説が目的ではない Rust からコンパイルして生成された WebAssembly を JavaScript から利用する方法を解説する文法や機能については, W

            WebAssembly 開発環境構築の本
          • HaskellとRustを足して2で割ったような関数型言語Fixを作っている話 - Qiita

            はじめに ここ1年ぐらいかけて、Fixという名前のプログラミング言語を作っています。 コアとなる機能の実装がある程度落ち着き、実際にFixを使ってプログラムを書けるようになってきたので、そろそろ言語の紹介をしてみようと思います。 本記事はFixのチュートリアルではなく、どういう思想で設計されていて、どういう特徴を持つ言語なのか、という点を紹介するものです。 意見・提案・助言などをいただけるとうれしいです。 リポジトリはこちらです。 ※ コメントやコミットメッセージは一応拙い英語で書いていますが、日本語でissueを立てたりdiscordで意見・質問してもらっても大丈夫です。 ※ 急いで作った部分もあるため、コンパイラのコードは結構汚いです。ご容赦ください。 現状、Fixをローカルで実行するためにはLLVMのインストールが必要で時間がかかりますが、Fix playgroundを使えばブラウザ

              HaskellとRustを足して2で割ったような関数型言語Fixを作っている話 - Qiita
            • フロントエンドエンジニアがWASM(Rust)でWebアプリを作ってみた

              この記事について この記事はアドベントカレンダー2021 Rust 四日目の記事です 概要 フロントエンドエンジニアである筆者がWASM(Rust)でWebアプリを作ってみたので、 その際の技術選定(主にビルド・開発補助周り)について 作ってみた雑感、特に「ぶっちゃけフロントエンドRust[1]ってどうなの?」という点 について書いていこうと思います。 TL,DR 2021年12月現在フロントエンドでのRustの採用は技術的に可能だがエコシステムが未発達なのでそれなりに技術力とコストを要求される とはいえ伸び代はかなりあるのでエコシステムが頑張ってくれれば、数年後には十分一般的な選択肢になってるかも(なってて欲しい) 主な対象読者 フロントエンドに携わる機会がある方々 この記事を読んでいただくことで・・・ フロントエンドという文脈におけるWASMの現状を知ってもらう フロントエンドをRus

                フロントエンドエンジニアがWASM(Rust)でWebアプリを作ってみた
              • Packaging Generated Code for gRPC Services

                Blog Introducing BugSnag Real User Monitoring for Flutter & React Native Applications

                  Packaging Generated Code for gRPC Services
                • Rustでつくる詰将棋Solver - すぎゃーんメモ

                  ついカッとなって先週からRustで詰将棋ソルバを書き始めてしまい、ようやくdf-pnで何らかの解答を出せるようになったところ。ここからもうちょっと調整していくぞ、、 pic.twitter.com/XM9iPJqocv— すぎゃーん💯 (@sugyan) November 2, 2021 というわけで突然Rustで詰将棋ソルバを作りたくなり、作った。 github.com 現時点ではまだ完成度は低くて6割ほどかな…。 とはいえそこらの素直な詰将棋問題なら普通に解けると思う。 冒頭の画像は看寿賞作品の3手詰「新たなる殺意」を2秒弱で解いたもの。 先行事例 将棋プログラムの多くはC++で書かれていて 最近はRustも増えてきているのかな? しかし「詰将棋を解く」ことに特化しているものはあまり多くはなさそうだった。 なかでもRustで書かれているものはna2hiroさんによるものくらいしか無さ

                    Rustでつくる詰将棋Solver - すぎゃーんメモ
                  • C++からRustに移行して1年経って思ったこと - Qiita

                    はじめに この記事は「プログラミング技術の変化で得られた知見・苦労話【PR】パソナテック Advent Calendar 2020」のために書かれたものです。 僕は去年の11月から一念発起してRustの勉強を初めて趣味で同人ゲームを開発しています。元々C++を4年程使っていて「C++最高、みんなC++使おう」とか友人に布教していました。しかし、C++プログラマは「一番自分たちの言語の批判に対して強くなる」と言われるほどC++はよくディスられます。もちろん僕も例外ではありませんでした(笑)。 一応僕もPythonを適当に使うようになってからC++のcppとhppを組み合わせるようなCの名残を感じるところや他言語と比べたときの標準ライブラリの貧弱さ、コードが冗長になりやすい点など使いにくいなあと思いはじめましていました。ですがPythonはあくまでも適当に使ってただけでしたし、一通り書けるJa

                      C++からRustに移行して1年経って思ったこと - Qiita
                    • GitHub Actions上のRustアプリのDockerイメージビルドを高速化する - blog.endflow.net

                      Rust + Docker + GitHub Actions = めちゃ遅い 以前、GitHub Actions 上の Rust ビルドを高速化する記事を書いたけど、 今回は Kubernetes 環境にスムーズに移行できるよう Docker イメージ化するという要件も加わったことで、改めて試行錯誤する必要が出てきた。 それぞれに対するビルド速度の最適化は存在しているものの、3つ (Rust, Docker, GitHub Actions) すべてを満たすとなるとコピペで終わるほど情報がまとまってないし、見つけた Tips もちょっと古かったり、これというものは見つけられなかった。 公式ドキュメントを見ると正当進化していて新しいオプションが生えていたりしたので、賞味期限は短そうだけど、自分の試行錯誤の結果を残しておこうと思う。 成果としては 12 分 22 秒かかっていた Rust アプリ

                      • Rust vs. Haskell

                        Rust and Haskell don’t shy away from powerful features. As a result, both languages have steep learning curves when compared with other languages. Trying to learn Rust or Haskell can be frustrating, especially in the first couple of months. But if you already know Rust, you have a head start with Haskell; and vice versa. In this article, we want to show how knowledge of one of these languages can

                          Rust vs. Haskell
                        • 「Rust」「Tauri」などのモダン技術で開発されたWin/Mac/Linux対応ファイラー「Spacedrive」/大手クラウドストレージに依存しないファイル管理を目指す野心的なプロジェクト【レビュー】

                            「Rust」「Tauri」などのモダン技術で開発されたWin/Mac/Linux対応ファイラー「Spacedrive」/大手クラウドストレージに依存しないファイル管理を目指す野心的なプロジェクト【レビュー】
                          • Rust+WebAssemblyのフレームワークを作ってみた - Qiita

                            はじめに クライアントサイドでのWebアプリケーション開発の発展は留まるところを知りません。しかし、JavaScriptは 型安全ではない ビルドのための環境構築が大変 といった課題をずっと抱えています。前者はTypeScriptでかなり改善されていますが、ベースがJavaScriptなので当初から型をもつ言語には及びません。後者もWebpackでかなり改善されましたが、依然としてビルドの設定は一番苦労するところです。WebAssemblyが主要ブラウザでサポートされた今、これらのソリューションとしてRust+WebAssemblyのフレームワークを提案します。 フレームワークの要件 フレームワークは既存の課題を解決するだけでなく、使いやすいことが重要だと思います。今回フレームワークを設計するにあたり、4つの要件を定義しました。 型安全 ビルドツール不要 標準HTMLに近いテンプレート記法

                              Rust+WebAssemblyのフレームワークを作ってみた - Qiita
                            • Electron代替を目指す軽量なフレームワーク「Tauri v2」β版リリース。iOS/Android対応など

                              JavaScriptとHTML/CSSを用いてアプリケーションを構築できるElectronの代替を目指し、より軽量なRust製のフレームワークとして開発されている「Tauri v2」のβ版がリリースされました。 iOS/Androidモバイル対応 TauriはこれまでWindows、Mac、Linuxに対応したデスクトップ版が2022年6月にバージョン1.0としてリリースされていますが、iOSとAndroidに対応したモバイル対応は正式版となっていませんでした。 Tauri v2ではWindows、Mac、Linuxに加えてモバイル版としてAndroidとiOSに対応することで、デスクトップ版のアプリケーションからモバイル版への移植をスムーズに行えるようになります。 また、モバイルOSで提供されている通知機能、NFC対応、生体認証、バーコードの読み取り、クリップボードなどのAPIにもアクセ

                                Electron代替を目指す軽量なフレームワーク「Tauri v2」β版リリース。iOS/Android対応など
                              • Yehuda Katzという生き方とインディーWeb - ワザノバ | wazanova

                                https://frontsidethepodcast.simplecast.fm/16 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 41分前 昨日のエントリーでも名前のでてきたYehuda Katzですが、Rails / Ember.js / jQuery / W3C Technical Architecture Group (TAG) / TC39-ECMAScriptなどで活躍し、今回はRustのコアチームに参加することが発表されてます。Tom Dale曰く「インターネットの半分くらい書いてる感じだから。[1] 」という勢いがあります。Yehudaの仕事振りやプロジェクト運営における考えは、オープンソースという視点での発言ですが、企業におけるプロジェクトの進め方や今後の働き方のスタイルがどう変わるか、変

                                • Rustで実装するmalloc - NTT Communications Engineers' Blog

                                  この記事は、NTT Communications Advent Calendar 2021 21日目の記事です。 はじめに こんにちは、イノベーションセンターの鈴ヶ嶺(@suzu_3_14159265)です。普段は、クラウド・ハイブリッドクラウド・エッジデバイスなどを利用したAI/MLシステムに関する業務に従事しています。本日は、Rustで動的メモリ確保(dynamic memory allocation)のmallocを実装してPythonやvimを動かしてみようという内容をお届けします。 また、去年もRustネタのアドベントカレンダーを書いているのでぜひ見ていただけると嬉しいです! NTTコミュニケーションズ Advent Calendar 2020 Rustで実装するNetflow Collector 実装するmallocのアルゴリズム 今回実装するmallocのアルゴリズムは小さな

                                    Rustで実装するmalloc - NTT Communications Engineers' Blog
                                  • Welcome to Comprehensive Rust 🦀 - Comprehensive Rust 🦀

                                    Welcome to Comprehensive Rust 🦀 This is a free Rust course developed by the Android team at Google. The course covers the full spectrum of Rust, from basic syntax to advanced topics like generics and error handling. The latest version of the course can be found at https://google.github.io/comprehensive-rust/. If you are reading somewhere else, please check there for updates. The course is availab

                                    • Meta(旧Facebook)が、Rustを社内の正式サポート言語に採用。サーバサイド向けとしてPython、C++、Hackに追加

                                      Meta(旧Facebook)は、ブログ「Engineering at Meta」で公開した記事「Programming languages endorsed for server-side use at Meta」で、Rustを新たに社内の正式サポート言語に追加したことを明らかにしました。 Meta社内ではソフトウェア開発において正式にサポートする言語を慎重に選択しており、社内においてサポートされた言語に対しては十分な投資が行われ、プログラミング、デバッグ、デプロイなどにおいて良好な開発体験が期待できるとともに、新しプロジェクトが開始される場合には、サポートされている言語を選択することが推奨されています。 サーバサイド向けの言語としてこれまでPython、C++、Hackがサポートされており、今回そこにRustが追加されました。 性能重視のバックエンドサービスやCLIの開発にRustを推

                                        Meta(旧Facebook)が、Rustを社内の正式サポート言語に採用。サーバサイド向けとしてPython、C++、Hackに追加
                                      • GitHub - alacritty/alacritty: A cross-platform, OpenGL terminal emulator.

                                        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 - alacritty/alacritty: A cross-platform, OpenGL terminal emulator.
                                        • Rust の DI を考える –– Part 2: Rust における DI の手法の整理 - paild tech blog

                                          paild 社でお手伝いをしている yuki です。前回に引き続き Dependency Injection 略して DI の話題を書いていきたいと思います。今回は Rust における DI についていろいろと考えてみました。今回紹介する実装はかなり単純な例を用いたもので、この記事からさらにみなさんのアプリケーションの実装状況に合わせていくつか工夫は必要になるかもしれません。ただ、とっかかりとしては十分なものになっていると思うので、DI でお困りの方はぜひ参考にしてみてください。 今回実装したいアプリケーションのお題について 今回紹介する技法の種別について コンストラクタインジェクション 静的ディスパッチを用いたもの 動的ディスパッチを用いたもの 静的ディスパッチと動的ディスパッチの利点・欠点 shaku (DI コンテナ)を用いたインジェクション shaku の利点・欠点 余談: DI

                                            Rust の DI を考える –– Part 2: Rust における DI の手法の整理 - paild tech blog
                                          • Rust 基礎文法最速マスター (rust 0.7 編) - gifnksmの雑多なメモ

                                            警告 (2014/1/25 追記) 以下の記事ですが、今となっては通用しない記述が多く含まれています。 0.7 から現在までに行われた大きな変更としては、思いつくだけでも 言語組み込み機能としての managed box が非推奨になった (将来削除され、ライブラリによる実装と置き換わる) rusti ツールが削除された というものがあります。 おそらく、文中のコード例はコンパイルすら通らなくなっていることでしょう。 また、今後も 1.0 に向け大きな変更が予定されています (DST や GC の実装など)。 文中の、言語の基本的なコンセプトに関する部分はかろうじて現在でも通用すると思いますが、その他の部分についてはきちんとメンテナンスされている文章 (公式のドキュメントなど) を参照してください。 以下、オリジナルの記事です。 ブログ移転後の最初の記事っということで、最近僕がハマっている

                                              Rust 基礎文法最速マスター (rust 0.7 編) - gifnksmの雑多なメモ
                                            • RailsライクなRustのWebフレームワーク 「Loco」 | DevelopersIO

                                              Introcusion つい先日、「Rust版のRails」ともいわれている、 Locoというフレームワークを教えてもらいました。 Railsは昔ちょっとさわった程度なのですが、 Rustで手軽にRailsライクなアプリ開発はおもしろそうなので、 試してみました。 Loco? Locoについて簡単に説明します。 このblog記事で、Locoって何? なんでRustなの?とか誰のためのフレームワーク?みたいなことが書いてあります。 軽く説明すると、↓です。 Locoって何? Loco は、Rails からインスピレーションを得た Rust用のWebフレームワーク ほぼすべての Rails 機能が含まれている Controllerとaxum経由のルーティング ActiveRecordライクにSeaORMでモデル操作 rrgenでコード生成 その他いろいろ。詳しくは元記事で RubyでいいならR

                                                RailsライクなRustのWebフレームワーク 「Loco」 | DevelopersIO
                                              • Rustはなぜ開発者に愛されているのか、そして「人を選ぶ」理由とは? 実案件でRustを採用するゆめみに聞く

                                                昨今、開発者の中で人気が増しているプログラミング言語「Rust」。気になっている開発者は多いものの、業務での採用はまだこれからと考えている人も多いだろう。そんな中、ゆめみではRustに力を入れ、自社内外の案件でRustの活用を進めている。なぜ、ゆめみではRustの習熟を推奨するのか。その理由とともに、Rustの特徴、実際に使って見た感想、さらにはRustの今後の展望などについて、ゆめみでRustの推進に関わっているチャレンジCTO(最高技術責任者)の池口直希氏、エンジニア兼チャレンジ取締役のスミス 祐一郎 ルーク氏、サーバサイドエンジニアの舩戸隆氏に話を聞いた。 ゆめみでRust活用を牽引するエンジニア 2006年にグレイドン・ホアレ氏という個人プロジェクトとして開発されたプログラミング言語「Rust」。2009年にMozillaが開発に参入してプロジェクト化。その後、仕様変更を繰り返し、

                                                  Rustはなぜ開発者に愛されているのか、そして「人を選ぶ」理由とは? 実案件でRustを採用するゆめみに聞く
                                                • Rustのlet-else文気持ち良すぎだろ - Qiita

                                                  // let 論駁可能パターン = 値 else { never型を返す処理 }; let Ok(val) = reqwest::get(url).await else { return }; このコードの意味としてはreqwest::get(url).awaitがOk(結果)を返してきたらvalに束縛し、ダメだったら関数を抜ける、になります。 if-let式 let-else文の詳細を説明する前に、まずはRustのif-let式について説明いたします。 Rustは式指向言語のためifも標準で式になっています。よく他言語では三項演算子使用で宗教戦争が起きていますが「if"式"があれば争いなんて起きないのに...(トオイメ」といつも思っています。

                                                    Rustのlet-else文気持ち良すぎだろ - Qiita
                                                  • 実用Rustアプリケーション開発

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

                                                      実用Rustアプリケーション開発
                                                    • 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
                                                      • 「第4のブラウザ言語」WebAssemblyが変えるフロントエンド開発 | レバテックラボ(レバテックLAB)

                                                        執筆 山内 直 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)に所属するテクニカルライター。出版社を経てフリーランスとして独立。ライター、エディター、デベロッパー、講師業に従事。屋号は「たまデジ。」。著書に『Bootstrap 5 フロントエンド開発の教科書』、『作って学べるHTML+JavaScriptの基本』など。 監修 山田 祥寛 静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「独習」シリーズ、「これからはじめるReact実践入門」、「改訂3版 JavaScript本格入門」他、

                                                          「第4のブラウザ言語」WebAssemblyが変えるフロントエンド開発 | レバテックラボ(レバテックLAB)
                                                        • AWS Lambda Go without Go - so what

                                                          とある勉強会用にLTネタを作っていたのですが、発表できなくなったので腐る前にブログに書いておきます。 お前は何を(ry 記事のタイトルについて お前は何を言っているんだ なのですが、元ネタは以下のツイートです。 ここからTCPでやり取りするプロトコルが読み取れるし、mainって名前で同じプロトコル喋るバイナリならstaticにビルドすれば別の言語でもネイティブに動かせるんじゃね?https://t.co/dWjs8YiuFe— Masashi Terui (@marcy_terui) 2018年1月17日 LTのネタになりそうだったのでやってみたわけです。 aws-lambda-goについて じゃあ、まあaws-lambda-goは一体どういう仕組みで動いているんだろうと、ソースを読んでみました。 で、entry.goとfunction.goあたりでだいたい分かりましたが、net/rpcパ

                                                            AWS Lambda Go without Go - so what
                                                          • Volta - The Hassle-Free JavaScript Tool Manager

                                                            ⚡ Fast Install and run any JS tool quickly and seamlessly! Volta is built in Rust and ships as a snappy static binary. ⚡ Reliable Ensure everyone in your project has the same tools—without interfering with their workflow. ⚡ Universal No matter the package manager, Node runtime, or OS, one command is all you need: volta install.

                                                            • 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
                                                              • 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 体験記
                                                                • Haskellの型クラスについて | mrsekutの備忘録

                                                                  NewsLearn more about the company, PR and product updates here.

                                                                    Haskellの型クラスについて | mrsekutの備忘録
                                                                  • 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
                                                                    • 2022年にやったこと - k0kubun's blog

                                                                      2021年にやったこと 2020年にやったこと 2019年にやったこと 2018年にやったこと 2017年にやったこと 2016年にやったこと 2015年にやったこと 今年のハイライトは 大学院を卒業し、CS修士号を取った グリーンカードを取った Shopifyに転職し、仕事でRubyのJIT開発を始めた という感じの一年だった。 大学 5月にジョージア工科大学のCS修士を卒業した。 ほとんどの人は3~4年かけて卒業するプログラムを、理論上最速である1年9か月で卒業するRTAをやっていた。 かといって特に雑になるでもなく、GPA 3.90/4.00 だったので、GPA 3.36だった学部の時よりかなりマシな成績を取っている。 なんかその記事に書くとダサくなりそうなので書かなかったが、よく宿題の提出期限になる月曜の朝5時はほぼ毎週起きててギリギリに提出するくらいには大変だった。4:57~4:

                                                                        2022年にやったこと - k0kubun's blog
                                                                      • exa · a modern replacement for ls

                                                                        A modern replacement for ls.You list files hundreds of times a day. Why spend your time squinting at black and white text? exa is an improved file lister with more features and better defaults. It uses colours to distinguish file types and metadata. It knows about symlinks, extended attributes, and Git. And it’s small, fast, and just one single binary. Most recent version: v0.10.1, released on Apr

                                                                        • WebAssembly 開発環境構築の本を公開しました - mizdra's blog

                                                                          はじめに Rust を用いて WebAssembly の開発環境を構築する手法を紹介する電子書籍を執筆・公開しました. WebAssembly へのコンパイルが可能な言語である Rust を用いて, WebAssembly の開発環境のテンプレートを作成する内容となっています. wasm-dev-book.netlify.com 本のタイトルからは一見すると C/C++ を用いた開発環境の構築も扱うように受け取れますが, 本書では Rust のみしか扱っておりません. ご注意下さい. 書籍の執筆動機 著者が春休み中に WebAssembly を用いて Web アプリケーションを作成する機会があり, 本書はそこで得た知見を纏めたものとなっています *1. 元々大学のサークルで発行した部誌に同じテーマで記事を書いており, 本書ではそれを Web 向けに編集・加筆した内容から構成されています.

                                                                            WebAssembly 開発環境構築の本を公開しました - mizdra's blog
                                                                          • AWS活用の自由度を上げる「Lambda」を「Rust」で活用 メモリの使用量を抑えつつ、プログラムの作成も簡単に

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

                                                                              AWS活用の自由度を上げる「Lambda」を「Rust」で活用 メモリの使用量を抑えつつ、プログラムの作成も簡単に
                                                                            • 高速な文字列探索:Daachorseの技術解説 - LegalOn Technologies Engineering Blog

                                                                              こんにちは。LegalForce Researchで研究員をしている神田 (@kampersanda) です。 LegalForce Researchでは現在、高速なパターンマッチングマシン Daachorse(ダークホース)を開発・運用しています。文字列処理の基礎である複数パターン検索を提供するRust製ライブラリです。以下のレポジトリで公開されています。 github.com 本記事はDaachorseの技術仕様を解説します。具体的には、 複数パターン検索に関係する基礎技術(トライ木・Aho–Corasick法・ダブル配列) Daachorseの実装の工夫と性能 を解説します。 以下のような方を読者として想定します。 文字列処理アルゴリズムやデータ構造に興味のある方 自然言語処理の要素技術に興味のある方 Rustライブラリに興味がある方 Daachorseについて 複数パターン検索の基

                                                                                高速な文字列探索:Daachorseの技術解説 - LegalOn Technologies Engineering Blog
                                                                              • 『基礎から学ぶ 組込み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
                                                                                • テキストエディタを作る

                                                                                  ここの記事を更新するのは約1年ぶり。夏の間は遊んでいたり秋からは仕事が忙しくなったりの近況だった。 コロナウィルスで自宅に閉じ込められてしまったので、プログラミングの練習のためにテキストエディタを作ってみた。 得られた知見などを紹介しよう。 目標としている機能・実装 練習・教材用として十分な小ささ。 記事のネタになる。また、作っていて飽きない。ひと篭もりするプロジェクトとして適切なサイズ。 昔から、プログラマなら作ってみたいものとして、(1)コンパイラ (2)OS (3)エディタ、がよく挙げられる。コンパイラについては以前に書いた。今回はエディタにチャレンジしてみることにした。 テキストエディタを作る場合、GUIツールキットを使って作成することも考えられるが、今回はviのようにターミナル上で動作するタイプのものを作る。時間があれば、次の様な発展的な目標も検討したい。 設定変更機能を持つ(そ