Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
KotlinのコードからWebAssemblyバイナリを生成可能、Kotlin/Wasmがアルファ版として提供開始 開発ツールのIntelliJ IDEAやプログラミング言語Kotlinなどの開発元であるJetBrainsは、これまで試験的プレビュー版だったKotlinのコードからWebAssemblyバイナリを生成する「Kotlin/Wasm」を、アルファ版として提供開始すると発表しました。 Kotlin/Wasm is now in Alpha and ready for you to try! Build web applications with Kotlin and use Kotlin/Wasm in your KMP projects. Take it for a spin and share your feedback with us! Learn more about t
When WebAssembly was first shipped it was an MVP which, while minimal, has spawned a huge number of exciting projects which work today across all major browsers. Rust has capitalized on the wasm MVP’s success as well with tools like wasm-bindgen and wasm-pack by making the MVP feel less minimal. WebAssembly is yet more ambitious, though! Since inception it’s always been intended to extend the WebA
The Artificial Intelligence Controller Interface (AICI) lets you build Controllers that constrain and direct output of a Large Language Model (LLM) in real time. Controllers are flexible programs capable of implementing constrained decoding, dynamic editing of prompts and generated text, and coordinating execution across multiple, parallel generations. Controllers incorporate custom logic during t
https://rconv.ongaeshi.me Ruby on Browser に続いて Ruby WASM/WASI で電卓っぽいものを作りました。 ongaeshi.hatenablog.com テキストボックスの内容を入力としてRubyスクリプトに渡して評価し実行結果を出力します。つまり入力→変換→出力するRubyアプリケーションがブラウザ上で簡単に作れます。コードはURLに記録されるので簡単に共有することができます。 基本 Rconv.set()メソッドに渡したブロックの中身が変換プログラムになります。ブロック引数に渡されるのはテキストボックスの内容がevalされたものです。Always string = true のときは常に文字列になります。ブロックの戻り値、もしくは標準出力に何か出力されたときはその内容が、そうでないときはブロックの戻り値が出力されます。 例えば irb
(at least for now)… We recently got pinged on Twitter regarding a question about WebAssembly (WASM) being the future of Babylon.js. Here is our response: Our friends at Three.js had the same answer by the way :) I wanted to use this blog to get more into details about why we do not think WASM is the future of JavaScript frameworks. WASM is a target not a user facing languageWASM is meant to be a w
こんにちは! テリーです。コロナのワクチンができたかも!?といううれしいニュースが話題になりましたね。自宅引きこもり生活もそろそろ終わりが見えてきたでしょうか。多くの芸能人がYouTubeにチャンネルを開設してくれたおかげで、入浴中に10分程度のお気に入りチャンネルを毎日見る習慣ができてしまいました。自分もヒカキンのようなYouTuberになって一儲けしてやろうと思い立ち、スマホで撮影してみましたが、編集の大変さでギブアップしてしまいました。オンラインで動画編集して、誰かに作業を手伝ってもらったり、アドバイスしてほしいですよね。そこで今回は、ブラウザで動画編集するのに役立つ最新技術をご紹介します。 今回紹介する技術 rnnoise-wasm ffmpeg.wasm wasmとは wasmはWebAssemblyの略称または拡張子で、ワズムまたはワスムと読みます。WebAssemblyとは、
std: Add a new wasm32-unknown-unknown target by alexcrichton · Pull Request #45905 · rust-lang/rust · GitHub Rust の nightly で wasm32-unknown-unknown という target が入ったので、Emscripten ナシでも wasm を吐けるようになったということで。 rust と js で json 投げあうコードまで書くか— Insanely fast (@mizchi) 2017年11月26日 やった。 github.com 普通に serde とか使えて便利。 文字列を渡すときには Rust 側の関数で alloc してヒープのそのポインタへ JS から書いてやる必要がある。で、関数にはそのポインタを渡す。 受け取るときはポインタが返ってくる
This patch set results in a working standard library for the asmjs-unknown-emscripten and wasm32-unknown-emscripten targets. It is based on the work of @badboy and @rschulman. It does a few things: Updates LLVM with the emscripten fastcomp patches, which include the pnacl IR legalizer and the asm.js backend. This patch is thought not to have any significant effect on existing targets. Teaches rust
はじめに 表題の通り、以前Emscriptenを使って作っていたライブラリをwasm対応して性能比較してみます。本来ならSION2 HDで比較してみたかったのですが、色々とハマっているうちに時間がなくなってしまったので、SION2 HDの中でも使っているz-music.jsに絞って評価してみようと思います。 なお評価にはChrome 63を使っています。ブラウザ間の比較とかもあれば良かったのかもしれませんが、純粋に時間がなくてやっていません。比較的新しいブラウザは全て実装しているので、いずれ比較・競争は自然と激しくなるでしょう:) 使ったマシンはMac mini (Late 2014)で、性能に関係しそうなプロセッサは3GHz Core i7です。古めのマシンとは言え、シングルコア性能で考えると今でも現役ですね。 一応Chromium Developerです、とか言っておきますが、だからと
HTML5ではIndexedDBというデータベースAPIが実装されています。しかし、若干利用法が独特な分、なかなか使いこなすのが難しいようです。昔ながらのRDBMSであったり、廃止になってしまったWebSQLデータベースの方が使いやすかったかも知れません。 今回紹介するsql.jsはSQLiteをEmscriptenを使ってJavaScriptで使えるようにしたライブラリになります。 sql.jsの使い方 デモです。SQLを実行できます。 結果も取得できます。 任意のSQLiteファイルを読み込めます。 sql.jsはSQLiteをWebAssemblyにし、実行できるようになっています。仮想ファイルシステムを使っており、インメモリで動作しています。そのため、Webブラウザをリロードしてしまうと消えてしまうのが難点です。その点さえ目をつぶれば、Webブラウザ上で自由にSQLを実行できる環境
Editor’s note: With the release of Docker Desktop 4.15, Docker+Wasm is now in beta! Check out the documentation to learn more. The Technical Preview of Docker+Wasm is now available! Wasm has been producing a lot of buzz recently, and this feature will make it easier for you to quickly build applications targeting Wasm runtimes. As part of this release, we’re also happy to announce that Docker will
どうもこんにちは。筆者はここ1年くらいnitrogqlというTypeScript + GraphQL向けコード生成ツールを開発しています。(初手宣伝) このツールの本体はRustで書かれており、コンパイルするとWASMバイナリが生成されます。このWASMバイナリをNode.jsから呼び出すようなラッパーを作って、コマンドラインツールとしてnpmで公開しています。 その性質上、Node.js側とWASM側で通信(データのやり取り)が発生します。特に、設定ファイルなどが.jsや.tsで書かれていても読み込む機能があり、その際はRust側からNode.js側に制御を渡してNode.js側でファイルを読み込み、結果をRust側に返すようになっています。 実は、nitrogqlの(Rust側)コードにはこれまで非同期処理が含まれていませんでした。しかし、パフォーマンスのことなどを考えると非同期処理に
Back to articlesAnnouncing py2wasm: A Python to Wasm compilerpy2wasm converts your Python programs to WebAssembly, running them at 3x faster speeds Since starting Wasmer five years ago we've been obsessed with empowering more languages to target the web and beyond through Webassembly. One of the most popular languages out there is Python, and while it is certainly possible to run Python programs i
少し前ですが、Docker の Technical preview として WASM (WebAssembly) のサポートが発表されました。 普段から Docker を利用していますが、そもそも WASM が何なのか? WASM をサポートしたことによって何ができるようになるのか? がわかっていなかったので、一通り調べてみました。 WASMとは まずは、WASM 自体の理解を深めるために、下記のドキュメントにざっと目を通します。 WebAssembly MDN's WebAssembly pages WASM とはバイナリコードの仕様で、そのフォーマットに対応したバイナリを実行する Stack-based な仮想マシンのことを指します。 開発初期は、ブラウザ(JS)の高速化が目的で、それを念頭に置いたような記載もドキュメントにあります。 WebAssembly is a new type
Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。佐伯氏は、WebAssemblyのWebの外の応用について発表しました。全2回。後半は、WasmがWeb外でどのように使われているか、WASIとProxy-Wasmの例から発表しました。前半はこちらから。 WASIはOSの上でWasm executableを動かすためのPortableなAPI/ABI 佐伯学哉氏(以下、佐伯):そういう特徴があると、かなりうれしいことがわかったんですが、具体的に何に使われているのか特にWASI(WebAssembly System Interface)とProxy-Wasm(Web Assembly for Proxies)について話したいと思います。 WASIはWebAssembly System Interfaceの略で、OSの上
Frame Rate. WASM = Green; JS = Blue; Choppy Video? Disable Javascript below to see WebAssembly only
クリスマスですね どうも、メリークリスマス🎄🎅🎄 会社のアドベントカレンダーにこんな日記みたいな記事を書いてしまって死にたみが高まる @kakerukaeru です。 最近のぼく 去年ぐらいから、Cloudflare が Edge 上で JavaScript を実行できるようにする Cloudflare Workers を発表したかと思えば、Akamai も負けじと Edge Workers を Edge Conference で発表したりして、今までの面倒な CDN の Configuration からより Dynamic な Routing だったり Caching の設定を Code で表現出来るようになってきてて夢が広がるなぁ〜と思いつつ、Cloudflare Workers を遊びでちびちび触ったりしていた。 ちなみに、Akamai の Edge Workers は楽しみで
はじめに質問 Wasm は何で書く?Go? Rust? AssembyScript? やっぱりWasm は C++!!!~Wasm/EmscriptenでOpenCVを使う~ ※現状での個人の見解です。 ということで、Emscripten で OpenCV を扱うことについて記事です。 この記事の元ネタはWebAssembly Night #10の発表内容です。 そしてOpenCV Advent Calendar 2020 の 9 日目でもあります。 画像処理 on your Browserの時代 Wasm といえば最近はすっかり Go や Rust で書くことが盛り上がっていますが、まだまだ C++/Emscripten も活躍しどころがあります。ブラウザでのクライアント画像処理が代表的なものでしょう。 WebRTCインフラの充実 時雨堂 WebRTC SFU Sora/NTT Com.
こんにちは、CyberFight DX 事業本部で web フロントエンドエンジニアをしている久保です。CyberFight DX 事業本部は複数のエンタメサービスを開発、運用するFANTECH本部に所属しています。今回は、管理画面を対象に WebAssembly ( Wasm ) を導入した事例をご紹介します。 FANTECH 本部では技術ブログでの発信を強化しており、最近では下記のような記事を投稿しています。ぜひご一読ください。 Cloud Run サイドカーで Fastly の Prometheus Metrics を収集して Grafana で可視化する reminder-lintでFeature Flagsの削除漏れを防ぐ マルチリージョンで稼働する内製Feature Flagsの実装 私たちのプロダクト WRESTLE UNIVERSE では、ユーザー対象のキャンペーンを実施す
なんとなく察しはついてるけど、いちおう確かめておこうかと。 GitHub - leader22/workers-benchmark 詳細はこのリポジトリに。 Rustで書くには ドキュメントなどあらゆる情報は、Cloudflare公式のこのリポジトリにある内容がすべて。 GitHub - cloudflare/workers-rs: Write Cloudflare Workers in 100% Rust via WebAssembly Workerグローバルのコードがそれ用のcrateになってて、それを使ってRustでコードを書く。RequestやらKVやらだけでなく、いわゆるRouterやちょっとした便利関数まで実装されてた。 READMEにあるコード例をそのまま貼るとこんな雰囲気で。 use worker::*; #[event(fetch)] pub async fn main(
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く