並び順

ブックマーク数

期間指定

  • から
  • まで

281 - 320 件 / 1231件

新着順 人気順

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

  • Ruby知識ゼロから初参加したRubyKaigi 2024レポート - 共沸

    TL;DR 楽しかった! 本編 おはようございます。手札事故(twitter:@hand_accident)と申します。 Ruby知識ゼロから初参加したRubyKaigi 2024レポート、略してルゼロ*1という感じでやっていきたいと思います。 < Day 0 自己紹介でもしとくか。生まれ育った愛媛県松山市*2に帰って非IT企業でパソコン係をやっている過程で、すべてが個人開発の労働環境で趣味全ブッパ技術選定をした結果HaskellとNimを書くようになりました。すこしSvelteもします。 Rubyは名前を聞いたことがあるしちょっとニッチなPythonライブラリ探そうとしたら時々検索にgemが引っかかってそちらにはあるのねえという感想を抱くなどしていましたが何の因果か触ってみるには至らず、沖縄に来て初めてコードを見たまであります。 愛媛県松山市で趣味の音楽ゲーム(DDR)に高じていたところ

      Ruby知識ゼロから初参加したRubyKaigi 2024レポート - 共沸
    • Static search trees: 40x faster than binary search

      1 Introduction1.1 Problem statement1.2 Motivation1.3 Recommended reading1.4 Binary search and Eytzinger layout1.5 Hugepages1.6 A note on benchmarking1.7 Cache lines1.8 S-trees and B-trees2 Optimizing find2.1 Linear2.2 Auto-vectorization2.3 Trailing zeros2.4 Popcount2.5 Manual SIMD3 Optimizing the search3.1 Batching3.2 Prefetching3.3 Pointer arithmetic3.3.1 Up-front splat3.3.2 Byte-based pointers3.

      • 6万5000人以上の開発者に「好きな言語」「好きなOS」「好きな開発環境」「好きなAI」を聞いた年次調査「2024 Stack Overflow Developer Survey」の結果が公開される

        開発者のためのコミュニティ「Stack Overflow」が実施した年次調査「2024 Stack Overflow Developer Survey」の結果が公開されました。6万5000人を超える開発者が、コーディングやAI、使用および学習したいと考えるテクノロジーやツール、職場での体験などについて回答しています。 2024 Stack Overflow Developer Survey https://survey.stackoverflow.co/2024/ まず、回答者の最終学歴は以下の通りで、41%が学士号を、25.6%が修士号を取得しています。Stack Overflowは「開発者の66%が学士または修士の学位を持っているが、学校でコードを学んだ開発者は49%に過ぎない」とも指摘しています。 コードを学習するために最も優先する選択肢を問うた項目では、「その他のオンラインリソース

          6万5000人以上の開発者に「好きな言語」「好きなOS」「好きな開発環境」「好きなAI」を聞いた年次調査「2024 Stack Overflow Developer Survey」の結果が公開される
        • Rustで作るtree-sitterパーサーのRubyバインディング

          大阪Ruby会議04

            Rustで作るtree-sitterパーサーのRubyバインディング
          • やっぱり安全を求めるなら「C」や「C++」ではなく「Rust」 Androidが取り組みを紹介

            GoogleのAndroidチームは2024年9月4日(現地時間)、公式のセキュリティブログで、「Android」におけるファームウェアの安全性向上に関する取り組みを発表した。メモリセーフなプログラミング言語である「Rust」をファームウェアに導入することで脆弱(ぜいじゃく)性を軽減できると解説している。 Rustでファームウェアの安全性をどう向上させるか? Androidの取り組み Androidは設計段階から安全性が重視されており、リリースごとにOSの悪用が困難になるよう工夫されている。その一環としてAndroidのファームウェアにRustが段階的に導入されており、メモリ安全性を向上させている。特に新しいコードやセキュリティリスクが高いコードに優先してRustを採用することで、脆弱性の削減が図られている。 従来のファームウェアは「C」や「C++」といったプログラミング言語で記述されるこ

              やっぱり安全を求めるなら「C」や「C++」ではなく「Rust」 Androidが取り組みを紹介
            • エンジニアリングマネージャーのスキル - ピープルマネジメント編 - - iimon TECH BLOG

              はじめに EMのスキルとは ピープルマネジメントのスキルとは 傾聴力 アイスブレイク 質問力 共感力 舐められ力 まとめ はじめに こんにちは! 株式会社iimonのエンジニアマネージャー、まつだです。 iimon2年目のアドベントカレンダー初日ということでそれにふさわしい内容にしようと思ったのですが、どうしてもRustについてしか書く気が起きず、あいだをとって(?)私のお仕事、「エンジニアマネージャー」(以下EM。エンジニアリングマネージャーともいう)について書きたいと思います! 先日、「EMゆるミートアップ」というイベントに初めて参加させていただいて、いろいろ考えることがありました。 EMのスキルとは 先述のイベントでまずはじめに話題になったのが「EMのスキルアップについて」です。 どなたかも当日質問されていましたが、そもそも「EMのスキル」とはなんでしょうか。 よく言われるものに、E

                エンジニアリングマネージャーのスキル - ピープルマネジメント編 - - iimon TECH BLOG
              • JavaScript/TypeScriptからWebAssemblyやネイティブバイナリを生成するコンパイラ「Porffor」の開発が加速へ、開発者がフルタイムで取り組み

                「Porffor」は、JavaScript/TypeScriptをWebAssemblyバイナリやネイティブバイナリへとコンパイルする実験的なツールであり、これまでにない2つの特徴を備えています。 1つ目はJavaScript/TypeScriptをコンパイルしてWebAssemblyバイナリやネイティブバイナリを生成しようとしている点です。 これまでもJavaScript/TypeScriptをWebAssemblyに変換するツールは存在していましたが、JavaScriptのコードとWebAssembly版のJavaScriptエンジンを1つにパッケージングするという手段で実現していました。 実行時には、パッケージ内部のJavaScriptコードをWebAssembly版JavaScriptエンジンで実行していたのです。そのため生成されたバイナリの大きさは比較的大きく、また実行速度はあく

                  JavaScript/TypeScriptからWebAssemblyやネイティブバイナリを生成するコンパイラ「Porffor」の開発が加速へ、開発者がフルタイムで取り組み
                • Welcome - 100 Exercises To Learn Rust

                  Welcome Welcome to "100 Exercises To Learn Rust"! This course will teach you Rust's core concepts, one exercise at a time. You'll learn about Rust's syntax, its type system, its standard library, and its ecosystem. We don't assume any prior knowledge of Rust, but we assume you know at least another programming language. We also don't assume any prior knowledge of systems programming or memory mana

                  • How we built JSR

                    We recently launched the JavaScript Registry - JSR. It’s a new registry for JavaScript and TypeScript designed to offer a significantly better experience than npm for both package authors and users: It natively supports publishing TypeScript source code, which is used to auto-generate documentation for your package It’s secure-by-default, supporting token-less publishing from GitHub Actions and pa

                      How we built JSR
                    • 自分が Moonbit 言語について知っていること

                      I will write an English version later to give back to the moonbit community. Addition: https://gist.github.com/mizchi/aef3fa9977c8832148b00145a1d20f4b この記事はリバースエンジニアリングを含んでいる。公式の Discord サーバーで質問して得られた内容を含むが、ここに書かれたものは自分の理解であって、公式の見解ではない。 前の紹介記事では煽り気味だったので、実際に調べながら書いてみてどう感じているかという実践的な話をする。 作者と開発組織 開発母体は深センの研究組織 IDEA 元 Meta で BuckleScript | ReScript を開発していた Hongbo Zhang 氏がチーフアーキテクト。 ReScript を知らない人の

                        自分が Moonbit 言語について知っていること
                      • Prototyping in Rust | corrode Rust Consulting

                        Programming is an iterative process - as much as we would like to come up with the perfect solution from the start, it rarely works that way. Good programs often start as quick prototypes. The bad ones stay prototypes, but the best ones evolve into production code. Whether you’re writing games, CLI tools, or designing library APIs, prototyping helps tremendously in finding the best approach before

                          Prototyping in Rust | corrode Rust Consulting
                        • Rust.Tokyoオーガナイザーの豊田優貴に聞く、思考の土台をつくった「お守り本」5冊 | レバテックラボ(レバテックLAB)

                          Rust.Tokyoオーガナイザーの豊田優貴に聞く、思考の土台をつくった「お守り本」5冊 2024年10月24日 Rust.Tokyo オーガナイザー 豊田 優貴 Sansan株式会社のソフトウェアエンジニア。金融機関向けのリスク管理計算機の開発に携わってから、しばらく広告配信の仕事に従事した。前職のUSの企業では実務でRustを利用した。本業のかたわら、Rustの国内カンファレンス「Rust.Tokyo」の運営や、いくつかのOSSの開発や貢献を行っている。共著で『実践Rustプログラミング入門』(秀和システム)、『RustによるWebアプリケーション開発』(講談社サイエンティフィク)など。また、『Web開発で学ぶ最新言語Rust』(日経クロステック)の連載を持つなどした。 ※アイキャッチとプロフィールに使用しているアイコンは「めぶイカメーカー」を使用し生成しております GitHub: h

                            Rust.Tokyoオーガナイザーの豊田優貴に聞く、思考の土台をつくった「お守り本」5冊 | レバテックラボ(レバテックLAB)
                          • 実行しなくても危険なコピペ

                            この記事はとあるサークルのOB/OGが行っているN代アドベントカレンダー2024の24日目です。 はじめに インターネットで拾った野良コードをよく考えずに実行してはいけないという話は皆さん耳タコだと思います。今日びそんな野蛮なことをする人はいないでしょうが、世の中には実行しなくてもエディタに貼り付けただけで悪さをしだすコードもあります。 本題 以下のコードをVSCodeなりRustRoverなり、お好きなエディタに貼り付けてみてください。 ......いや、やっぱり貼り付けないでください。 #![allow(dead_code)] fn main() { println!("Hello, world!"); } type T1<T> = (T, T, T, T); type T2<T> = T1<T1<T1<T1<T>>>>; type T3<T> = T2<T2<T2<T2<T>>>>;

                              実行しなくても危険なコピペ
                            • JavaScriptの識別子に中黒が使えるようになった: Days on the Moon

                              JavaScriptの識別子(変数名、関数名、プロパティ名など)の2文字目以降に中黒「・」(U+30FB KATAKANA MIDDLE DOT)が使えるようになりました。以下のコードはChrome 124では構文エラーになりますが、Chrome 125では問題なく実行できます。 const シン・ゴジラ = 2016; JavaScriptの識別子 中黒が使えるようになったのは、JavaScript(ECMAScript)の仕様が変わったからではありません。変わったのはUnicodeの仕様のほうです。Unicode 15.1.0(2023年9月)においてOther_ID_Continueプロパティ(を持つ文字の集まり)に中黒が追加されました。 そもそもJavaScriptの識別子に使える文字は、Unicodeを参照して定義されています。ECMAScript 2023(2023年6月)では

                              • tbsp - tree-based source-processing language

                                tbsp - tree-based source-processing language tbsp is an awk-like language that operates on tree-sitter syntax trees. to motivate the need for such a program, we could begin by writing a markdown-to-html converter using tbsp and tree-sitter-md [0]. we need some markdown to begin with: # 1 heading content of first paragraph ## 1.1 heading content of nested paragraph for future reference, this markdo

                                • Rust by Example 日本語版が公式に公開されるまで

                                  はじめに 2024/07/25 にリリースされた Rust 1.80.0 にて Rust by Example の日本語版が公式に公開されました。画面右上にある地球儀のアイコンから日本語を選択可能になっています。 この取り組みを始めたのは2023年の10月頃だったのですが、さまざまなレビュー待ちやRustにおけるドキュメント公開フローをよく分かっていなかったことによる失敗もあり、最終的には1年近くかかってしまいました。 Rustはコンパイラの開発などかなり良くドキュメント化されている(Rust Compiler Development Guide)のですが、ドキュメントの管理についてはほとんど資料がなく、Zulip で聞かないと分からないようなこともありました。 この記事ではこの1年でやってきたことを時系列で書いていきます。Rustのドキュメントに貢献したい人には参考になる部分があるかもし

                                    Rust by Example 日本語版が公式に公開されるまで
                                  • We need visual programming. No, not like that.

                                    SummaryMost visual programming environments fail to get any usage. Why? They try to replace code syntax and business logic but developers never try to visualize that. Instead, developers visualize state transitions, memory layouts, or network requests. In my opinion, those working on visual programming would be more likely to succeed if they started with aspects of software that developers already

                                    • WebAssemblyとマルチスレッドによる環境に依存しない高速画像変換

                                      画像変換の WebAssembly 利用 本稿では、画像サイズ変更やフォーマット変換といった処理を WebAssembly で行う方法について紹介します。また、必要に応じてマルチスレッドを使用することで、処理を並列化し、より高速な実行を実現できます。 なぜ画像変換を WebAssembly で行うのか JavaScript は大量のビットデータの扱いには強くありませんが、WebAssembly は SIMD(Single Instruction, Multiple Data)などを使い、並列処理をサポートしています。これにより、画像変換のような重い計算を高速化できます。また、WebAssembly はブラウザだけでなく、Node.js や Deno など他の環境でも利用可能です。 今回は Emscripten を使用して C++でコンパイルを行います。WebAssembly に関して Ru

                                        WebAssemblyとマルチスレッドによる環境に依存しない高速画像変換
                                      • iOS/Androidに対応した「Tauri 2.0」が公開 ~「Rust」が使えるアプリフレームワーク/「Swift」「Kotlin」など、モバイルOSネイティブ言語にも対応

                                          iOS/Androidに対応した「Tauri 2.0」が公開 ~「Rust」が使えるアプリフレームワーク/「Swift」「Kotlin」など、モバイルOSネイティブ言語にも対応
                                        • gRPC Over HTTP/3

                                          Introduction At the time of writing, HTTP/3 is supported by 30.4% of the top 10 million websites. This market penetration is astounding, but it seems like all of this progress has been possible almost exclusively by work on browsers, load balancers and CDN providers. What about the backend? How’s HTTP/3 doing there? The answer, sadly, is not as incredible. Because of this, I have been very interes

                                            gRPC Over HTTP/3
                                          • Rust on Rails!? Rust 版の Rails と呼ばれる "Loco" を試す!

                                            Rust 版 Rails "Loco" Loco は Rails にインスパイアされた Rust の比較的新しい Web フレームワークです。 2024 年 9 月 1 日時点でバージョン 0.8.0 がリリースされています。 Loco の特徴 タイトルにもある通り、Loco is Rust on Rails. [1] を謳っており、 Ruby on Rails の開発体験の良さを Rust でも再現しようとしています。 また、小さいサービスや個人開発に適したフルスタックフレームワークとして開発されているようです。 内部実装では、コントローラーやルーティングは Axum で実装されていたり、 ActiveRecord は SeaORM で実装されていたりするそうです。[2] Axum や SeaORM については、別の記事で触れているので良ければご覧ください! Rust | Axum と

                                              Rust on Rails!? Rust 版の Rails と呼ばれる "Loco" を試す!
                                            • Rust for Linuxで新たな動き — リーナス・トーバルズの「右腕」がRust支持を表明

                                              2月20日、海外のテクノロジーメディアPhoronixが「Greg Kroah-Hartman Makes A Compelling Case For New Linux Kernel Drivers To Be Written In Rust」と題した記事を公開した。以下に、その内容をかいつまんで紹介する。 2月20日、海外のテクノロジーメディアPhoronixが「Greg Kroah-Hartman Makes A Compelling Case For New Linux Kernel Drivers To Be Written In Rust」と題した記事を公開した。以下に、その内容をかいつまんで紹介する。 記事によると、LinuxカーネルにRustを導入するかどうかをめぐる議論は続いている。リーナス・トーバルズ氏の右腕ともいえるGreg Kroah-Hartman(Greg KH

                                                Rust for Linuxで新たな動き — リーナス・トーバルズの「右腕」がRust支持を表明
                                              • 早くて安全、以外のRustの好きなところ

                                                こんにちは。Rustを愛し、Rustに愛された男です。 BoostDraftでは、一部のシステムでRustで使用しています。そこそこQPSのあるAPIサーバーや、そこそこ量のあるデータの解析などです。 Wikipediaでは、Rustの説明として以下のような一文から始まっています。 Rust(ラスト)は、性能、メモリ安全性、安全な並行性を目指して設計された 引用元:Rust (プログラミング言語) また公式サイトでは、Rustを使う理由として「パフォーマンス」「信頼性」「生産性」が挙げられています。 早くて安全!にフォーカスされがちなRustですが、僕がRustを使う一番の理由は「生産性」です。 なので今回は、生産性に寄与しそうな、僕のお気に入りポイントをいくつか紹介したいと思います。 エコシステム Cargo CargoはRustにおけるビルドシステム兼パッケージマネージャです。 ビルド

                                                  早くて安全、以外のRustの好きなところ
                                                • WebGPU で実装したリアルタイム 3D 流体シミュレーションの紹介

                                                  ブラウザ上で動作するリアルタイム 3D 流体シミュレーションを,WebGPU を使って実装しました. Demo(WebGPU に対応したブラウザが必要です.) Repository Demo Video 本記事では,主に以下の 3 つについて説明します. シミュレーションの実装に WebGPU を使った理由 流体の運動をシミュレーションするのに用いた SPH 法 特に,GPU 上での近傍探索の高速化について詳しく説明します. 水面のレンダリングに用いた Screen-Space Rendering WebGPU を実装に使った理由 このシミュレーションでは,水面のレンダリングには WebGPU の頂点シェーダー・フラグメントシェーダーを,SPH 法の計算にはコンピュートシェーダーを用いています.今回,実装言語として WebGPU を用いたのは,なんといってもコンピュートシェーダーを使ってみ

                                                    WebGPU で実装したリアルタイム 3D 流体シミュレーションの紹介
                                                  • Rust and WebAssemblyでSPAを作ってみよう

                                                    Rust and WebAssemblyでSPAを作ってみよう:Webアプリ実装で学ぶ、現場で役立つRust入門(12) 第12回からは、第11回までで作成した投稿アプリの延長として、Rust and WebAssemblyでTODOアプリを開発します。第12回では、プロジェクトの構築やさまざまな準備のためのコードを通じて、Rust and WebAssemblyの基本的な利用方法を理解します。

                                                      Rust and WebAssemblyでSPAを作ってみよう
                                                    • 【速報】Rails 8.0.0がリリースされました|TechRacho by BPS株式会社

                                                      Ruby on Rails 8.0.0がリリースされました。 Rails 8.0: #NOBUILD, #NOPAAS, all-in on SQLite as a production database option with jobs, cache, and cable, new authentication generator, and so much more! Final release is out 🎉 https://t.co/qom10worLW — DHH (@dhh) November 7, 2024 リリース情報: Ruby on Rails — Rails 8.0: No PaaS Required 英語版Changelogをまとめて見るにはGItHubのリリースタグ↓が便利です。v8.0.0タグの日付は日本時間の2024/11/08 07:29でした。 Rele

                                                        【速報】Rails 8.0.0がリリースされました|TechRacho by BPS株式会社
                                                      • GitHub - aws/aws-secretsmanager-agent: The AWS Secrets Manager Agent is a local HTTP service that you can install and use in your compute environments to read secrets from Secrets Manager and cache them in memory.

                                                        The AWS Secrets Manager Agent is a client-side HTTP service that you can use to standardize consumption of secrets from Secrets Manager across environments such as AWS Lambda, Amazon Elastic Container Service, Amazon Elastic Kubernetes Service, and Amazon Elastic Compute Cloud. The Secrets Manager Agent can retrieve and cache secrets in memory so that your applications can consume secrets directly

                                                          GitHub - aws/aws-secretsmanager-agent: The AWS Secrets Manager Agent is a local HTTP service that you can install and use in your compute environments to read secrets from Secrets Manager and cache them in memory.
                                                        • VitalRouter.MRuby - Unity向け汎用Rubyスクリプティングフレームワーク - hadashiA

                                                          先日、VitalRouter.MRuby というUnityパッケージを公開しました。Tweet 元々、VitalRouter というUnity向け高速メッセージングライブラリをつくっていたんですが、ここに mruby を組み込むことによって、Rubyスクリプトで書いたとおりにメッセージを発行(publish)できるという代物、それが VitalRouter.MRuby 、です。 これによって、ゲームのシステム部分の開発のレイヤの上に、お手軽ゆるゆるスクリプトを乗っけることができます。 What is VitalRouter? VitalRouter自体は単に、中央イベントアグリゲータ/メッセージブローカー/メディエーター的なパターンを持ち込めるライブラリです。 僕の考えでは、ゲームプログラミングの設計でややこしいところのひとつがこの「イベント/メッセージ発行」みたいなところにあります。ゲー

                                                            VitalRouter.MRuby - Unity向け汎用Rubyスクリプティングフレームワーク - hadashiA
                                                          • Rails 8.0: No PaaS Required

                                                            Deploying modern web apps – with all the provisions needed to be fast and secure while easily updateable – has become so hard that many developers don’t dare do it without a PaaS (platform-as-a-service). But that’s ridiculous. Nobody should have to pay orders of magnitude more for basic computing just to make deployment friendly and usable. That’s a job for open source, and Rails 8 is ready to sol

                                                              Rails 8.0: No PaaS Required
                                                            • Rust for AWS Lambda, the Docker Way

                                                              Contents Introduction The Rust Code Cargo Lambda The Dockerfile Configurable Dockerfile Bonus Tips Final Words Introduction Rust is a great language to consider when writing services for AWS Lambda, because of its extremely low start-up time, CPU usage and memory footprint. These are all important metrics to consider in serverless infrastructure and they translate to direct cost savings and better

                                                                Rust for AWS Lambda, the Docker Way
                                                              • Zedの設定をちゃんとやってみる - Don't Repeat Yourself

                                                                ここ数回の記事を見返してみると、書評ばかりしていてコード書いてるのか…?となったので、久しぶりにちゃんとコード(設定ファイル)を書く記事を書こうと思いました。いえ、コードは書いてるんですが、まとまった成果になっていないか、あまり新しいことをやっていないだけです。 Zed Zedの設定方法と今回目標 settings.jsonとkeymap.json snippet 設定の目標 私の設定 vim_mode、フォント、テーマ inlay hints rust-analyzer キーバインディング 設定してみての感想 参考資料 Zed Zed(ゼッド)というエディタが最近話題ですね。私も実は最近会社のPC上のNeovimが壊れてしまって、直している時間がないので一旦Zedを使ってその場しのぎをしています[*1]。VS Codeを使わなかったのは、あんまりVimバインディングが強くないとわかってい

                                                                  Zedの設定をちゃんとやってみる - Don't Repeat Yourself
                                                                • KubeCon + CloudNativeCon Europe 2024 参加レポート - ZOZO TECH BLOG

                                                                  はじめに こんにちは。SRE部フロントSREブロックの三品です。 3月19日から3月22日にかけてKubeCon + CloudNativeCon Europe 2024(以下、KubeCon EUと呼びます)が行われました。今回弊社からはZOZOTOWNのマイクロサービスや基盤に関わるエンジニア、推薦システムに関わるエンジニアの合わせて4人で参加しました。 本記事では現地の様子や弊社エンジニアが気になったセッションや現地の様子について紹介していきます。 目次 KubeConEU2024の概要 セッションの紹介 現地の様子 ブースについて 参加に向けてのTips 最後に KubeCon EU 2024の概要 昨年4月にオランダ アムステルダムで行われたKubeCon EUの様子については昨年の参加レポートをご覧ください。 techblog.zozo.com 今年のKubeCon EUはフラ

                                                                    KubeCon + CloudNativeCon Europe 2024 参加レポート - ZOZO TECH BLOG
                                                                  • 【v6プラス/OCNバーチャルコネクトでもNATタイプA】LinuxでポートセービングIPマスカレード付きの制限コーン風NAT(EIM/ADF)を動かす - turgenev’s blog

                                                                    概要 NAT動作をめぐる誤解まとめ - turgenev’s blogでは、UDPホールパンチングのしやすさとポートの節約を両立するには「Address Dependentなマッピングを保持しつつEIM風に動作するADFなNAT」が一番いいという話を書きました。これだとv6プラスやOCNバーチャルコネクトでもNintendo SwitchのNAT判定が「タイプA」になります。 この記事では、Symmetric NAT/Full Cone NATをサポートするruby製NATであるrat(GitHub - kazuho/rat: NAT written in pure ruby)を手元で動かし、またコードを少しだけ変更することで上記のようなNATを実際に動作させるところまでを紹介します。変更後のコードはGitHub - ge9/rat: NAT written in pure rubyに公開

                                                                      【v6プラス/OCNバーチャルコネクトでもNATタイプA】LinuxでポートセービングIPマスカレード付きの制限コーン風NAT(EIM/ADF)を動かす - turgenev’s blog
                                                                    • Wvlet: Redesigning 50-Year-Old SQL for Modern Data Analytics | Wvlet

                                                                      We are excited to announce the release of Wvlet version 2024.9, an open-source flow-style query language designed to help users to write efficient queries for SQL engines. You can try Wvlet, pronounced as weave-let, directly in your web browser at Wvlet Playground. The source code of Wvlet compiler is available at GitHub wvlet/wvlet. Why Wvlet?​ At Treasure Data, we process over 3 million SQL quer

                                                                        Wvlet: Redesigning 50-Year-Old SQL for Modern Data Analytics | Wvlet
                                                                      • Rust と Wasm で極限まで PNG ファイルを圧縮した話

                                                                        はじめに 以前つくった Minsta というデジタルスタンプラリーの Web アプリの中で、ブラウザ上で Canvas を使用してスタンプ風の画像を生成する機能があるのですが、前々からもう少し画像のファイルサイズを落とせそうだなと思っていたので、今回 Rust と WebAssembly を使用して PNG ファイルを極限まで圧縮するのに挑戦してみました。 Minsta については以下の記事をご覧ください。 動機 Minsta では単色で背景透過の以下のようなスタンプの PNG 画像をブラウザ側で Canvas の toBlob メソッドを使用して生成しているのですが、このメソッドで PNG エンコードすると 32 bit の RGB+alpha 形式のファイルしか生成できず、 Minsta で扱うような単色の画像にとっては余計にデータサイズが膨らんでしまっていました。 PNG は使用する

                                                                          Rust と Wasm で極限まで PNG ファイルを圧縮した話
                                                                        • セキュリティキャンプ2024 WebAssemblyゼミの備忘録 - ainnoooのブログ

                                                                          WebAssemblyゼミの講師を@saza_kuとさせてもらいました 新設のゼミでして、Wasm楽しいよという独り言と、受講生の方々が優秀すぎましたという備忘録です WebAssemblyゼミとは? WebAssembly(Wasm)は仮想命令セットです。RustやGoをはじめ様々な言語で記述されたアプリケーションをWasmターゲットにコンパイルできます。 Wasmは仮想命令セットですので、x86などのCPUで実行できるようWasmの命令を解釈するソフトウェアが必要になります。これをWasmランタイムと呼んでいまして、本ゼミはWasmランタイムを実装するゼミです。 Wasmの仕様を読み解きながら、基本的なWasmランタイムを実装し、ちょっとしたアプリケーションを動かす、というのがゼミの当初のゴールでした(このゴールはすぐに良い意味で破られます) 応募課題 応募課題ではWasmバイナリのp

                                                                            セキュリティキャンプ2024 WebAssemblyゼミの備忘録 - ainnoooのブログ
                                                                          • uv: Unified Python packaging

                                                                            TL;DR: uv is an extremely fast Python package manager, written in Rust. We first released uv in February as a drop-in replacement for common pip workflows. Today, we're announcing a series of features that extend uv beyond a pip alternative, and into an end-to-end solution for managing Python projects, command-line tools, single-file scripts, and even Python itself. It's Cargo, for Python: a unifi

                                                                              uv: Unified Python packaging
                                                                            • GhosttyでiTerm2風のVisor(クイックターミナル)を設定する - Qiita

                                                                              macOSのターミナルエミュレータとして人気の高いiTerm2には、グローバルホットキーで呼び出せるVisor機能があります。今回は、新しいターミナルエミュレータであるGhosttyで、同様の機能を実現する方法をご紹介します。 Ghosttyとは Ghosttyは、Zigで書かれていて、高速で最新の機能を備えたクロスプラットフォームのターミナルエミュレータです。Rustで書かれたAlacrittyやC++で書かれたkittyと同様、モダンなアプローチでターミナルを再実装しています。 設定方法 Ghosttyの設定は~/.config/ghostty/configファイルで管理します。以下の設定で、iterm2風のVisor表示(Ghosttyではクイックターミナルと呼びます)を実現できます: font-family = Comic Mono macos-titlebar-style = h

                                                                              • 任天堂のVR「バーチャルボーイ」が面白い。Vision Proで復活

                                                                                任天堂のVR「バーチャルボーイ」が面白い。Vision Proで復活2024.08.17 13:0033,283 Kyle Barr - Gizmode US [原文] ( カタヤママコト ) バーチャルボーイ。1995年に任天堂から発売された、3D立体視を用いたゲーム機。 『バーチャルボーイ ワリオランド』など隠れた名作はあったものの、ハードの特性上、とても遊びづらく、黒歴史的な見られ方をしてきたハードでした。 目が疲れるとか、画面が赤いとか、持ち運べないとか...いろいろ言われていたようです。 しかし、時は流れ...かのバーチャルボーイのような形状は、VR ヘッドセットのスタンダードに。お金はかかるけど、Vision Proを使えば、バーチャルボーイのタイトルを正しく評価できるのかもしれません。 バーチャルボーイのゲーム面白いじゃんアプリ開発者アダム・ガスティーユ氏は、Apple Vi

                                                                                  任天堂のVR「バーチャルボーイ」が面白い。Vision Proで復活
                                                                                • [Rust] 自作言語での TUI デバッガのススメ

                                                                                  Rust で作るプログラミング言語シリーズです。 バイトコードコンパイラの難しさ 書籍での心残りの一つが、第6章のバイトコードの難易度です。本書ではプログラミング言語を作るにあたってステップ・バイ・ステップで難易度を上げていくように構成を考えていますが、第6章のバイトコードの実装の時点で難易度が急激に上昇します。例えば、次のようなジャンプアドレスの計算を行う必要があるのですが、これはかなり込み入ったロジック計算が必要になります。 条件分岐では、下図のようにジャンプしますが、このアドレス計算が厄介です。 ループについても同じくジャンプ命令が必要ですが、こちらはループの先頭にアドレスを戻します。 この実装の難しさは、プログラムの意味を理解する(意味論)ロジックと、それをバイトコードへ変換するロジックを一つとしてデバッグしなくてはならないところにあります。どちらに問題があるかを切り分けるのは簡単

                                                                                    [Rust] 自作言語での TUI デバッガのススメ