並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 168件

新着順 人気順

wasmの検索結果1 - 40 件 / 168件

  • FFmpeg Explorer!

    • スイカゲームの作り方

      はじめに Go言語用のEbitengineというゲームエンジンに興味があったので、試しにスイカゲームもどきを作りってみました。Ebitengineを使うと意外と簡単にスイカゲームもどきを作る事ができたので、なるべく分かりやすく作り方を紹介してみようと思います。 まずは先に完成品をお見せします。ちなみにフルーツの回転は面倒くさいので実装しないことにしました。 ちなみにEbitengineはwasmでも普通に動きます。ビルドしたものをこちらに置いたのでブラウザから実際に動かす事ができます。 それではスイカゲームもどきを作って行きましょう。 描画する まず一番初めにフルーツの画像を作るところから始めます。これはリンゴ、オレンジ、ブドウ、パイナップル、メロン、スイカのつもりです。 続いてフルーツを定義します

        スイカゲームの作り方
      • Web版VSCodeがDockerコンテナをWASM環境で起動、Webブラウザ内ローカルマシンとして利用可能に。拡張機能「vscode-container-wasm」登場

        Web版VSCodeがDockerコンテナをWASM環境で起動、Webブラウザ内ローカルマシンとして利用可能に。拡張機能「vscode-container-wasm」登場 WindowsやMacなどのデスクトップPCでVisual Studio Code(以下VSCode)を利用して開発をする場合、同じローカルマシン上でDockerコンテナのLinux環境を起動し、VSCodeのターミナルで接続して操作することは、開発環境としてよくあることだと思います。 これと同じことをWebブラウザ版のVSCodeでも実現する、すなわちWeb版VSCodeが同一Webブラウザ上にWebAssembly化したDockerコンテナを起動し、Web版VSCodeからローカルマシンとして接続し利用できる、実験的実装を実現したVSCodeの拡張機能「vscode-container-wasm」が登場しました。 V

          Web版VSCodeがDockerコンテナをWASM環境で起動、Webブラウザ内ローカルマシンとして利用可能に。拡張機能「vscode-container-wasm」登場
        • WebAssembly は次世代のコンテナ技術になれるか?

          色々あって WebAssembly の component model を調べていたら、未来が見えた気がしたのでここに書いておきます。 「今の WebAssembly」 とは何か WebAssembly の Web の部分は忘れてください。これは単に JVM version 20xx です。ポータブルなバイナリ仕様です。 実行にあたっては今はホスト言語として JS が使われていますが、実際にはホストがJSである必要すらなく、なんならホストが不要なスタンドアロン環境すらあります。(wasmtime/wasmer) じゃあ WebAssembly は何かというと、サンドボックスで実行される VM の仕様です。比較的高水準なバイナリで、 V8 や Spider Monkey に付属する WebAssembly Runtime や、 Wasmtime や Wasmer といった WebAssemb

            WebAssembly は次世代のコンテナ技術になれるか?
          • WebAssembly所感

            WebAssemblyをちょっといじってみて思ったところをまとめてみます。 設計思想 WebAssembly/designに設計文書がまとまっています。特にHighLevelGoals.mdから読み取れるポイントは以下の4点です。 サンドボックス化された環境であること。 移植性があること。つまり、特定の実CPUアーキテクチャ等に依存しないこと。 少なくともC/C++の(十分に高速な)コンパイルターゲットとして機能すること。 安定した仕様を持つこと。 サンドボックスという観点からは、先行技術として以下のようなものが特筆に値します。 Webサンドボックス JavaScript および asm.js Javaアプレット Flash (ActionScript) NaCl, PNaCl Web以外のサンドボックス OSのユーザーランド、特にLinux userland これらのサンドボックスとの比

              WebAssembly所感
            • 2024年絶対に読む技術書10選

              あけましておめでとうございます!uenikiです。2024年が始まってしまいました。 こちらの記事で、2023年に読んだ技術書Top5を紹介しました。 2023年は、技術書は12、3冊しか読めませんでしたが、毎年大体15冊〜20数冊程度で安定しているようです。(マネジメント系の本を含めるともう少し増えますが、ここではピュアに技術寄りの本のみ対象とします。) ということは、2024年も10冊は読めるということですし、すでに発売している(発売を予定している)本でもそれぐらいの数はあるだろうということで、雑に10冊を選んでみたいと思います。この企画としては、すでに読んだことある本を再度読み通すのも1冊とカウントすることとします。辞書的に必要な箇所だけ読むのは1冊とはカウントしません。 そして、必ずこの10冊は読むことします。 10選のご紹介 [試して理解]Linuxのしくみ ―実験と図解で学ぶO

                2024年絶対に読む技術書10選
              • WebAssembly の過去・現在・未来 - Qiita

                はじめに WebAssembly (略して Wasm) では WASI や WIT、 Component Model など様々な仕様があります。 それぞれが登場した背景、モチベーションなどを理解することでなんとなく概要を掴んでいくことができるのではないかと考えたため、過去・現在・未来と時間軸で整理してみました。 まず Wasm とその特徴に関して簡単に紹介した後、Wasm の過去として生まれた背景やモチベーションを紹介します。 そして現在の Wasm がなぜ注目を集めているのか、そして現在策定中の仕様と目指している未来について紹介します。 WebAssembly とはなにか WebAssembly はスタックベースの仮想マシン用バイナリ命令フォーマットの仕様です。Wasm と略されます。 Wasm ファイル(Wasm モジュール)は一般に .wasm という拡張子で表されるバイナリファイル

                  WebAssembly の過去・現在・未来 - Qiita
                • MoonBit が WebAssembly 時代の理想(の原型)だった

                  最近 moonbit という言語を知ったのですが、これが調べれば調べるほど好きになる言語だったので、紹介させてください。 文法的には GC 付きの Rust で、 WebAssembly にコンパイルされます。とくに CDN Edge Worker 上での実行を想定しているようです。もう好き。 注意: まだ若い言語なので、これから言語仕様がガンガン変わっていくと思われます。あくまで現時点での情報です。 tl;dr Pros だいたい GC あり Rust と捉えていい 文法面のキャッチアップが容易 ライフタイムの難しさを考えなくていい すでに vscode 拡張やパッケージマネージャ等のエコシステムが整っている Cons まだ安定していない / しばらくはソースコードが公開されない 現時点では学習リソースやパッケージ数が足りず、書き手の腕力が求められる はじめに: JS/TS/Rust へ

                    MoonBit が WebAssembly 時代の理想(の原型)だった
                  • RustでWasm Runtimeを実装する

                    Rustで"Hello World"を出力できる小さなWasm Runtimeをゼロから実装して、WasmとWASIの動作原理を理解する本です。

                      RustでWasm Runtimeを実装する
                    • より高速なRubyのWebAssembly実装「Ruvy」、Shopifyがオープンソースで公開。Ruby仮想マシンとRubyアプリを組み合わせてビルド

                      より高速なRubyのWebAssembly実装「Ruvy」、Shopifyがオープンソースで公開。Ruby仮想マシンとRubyアプリを組み合わせてビルド 昨年(2023年)12月にリリースされた「Ruby 3.2」では、WebAssemblyによって実装されたRubyランタイム「Ruby.wasm」が正式版となりました。これによりWebブラウザや単体のWebAssemblyランタイムの上でRubyランタイムを実行し、Rubyプログラムを実行できるようになりました。 このRuby.wasmをベースに、さらに高速なRubyのWebAssembly実装となる「Ruvy」が、Shopifyからオープンソースとして公開されました。 Calling all #Ruby developers! Explore a new tool for leveraging Ruby to create #WebAs

                        より高速なRubyのWebAssembly実装「Ruvy」、Shopifyがオープンソースで公開。Ruby仮想マシンとRubyアプリを組み合わせてビルド
                      • WasmLinux: WebブラウザでLinuxカーネルとBusyBoxを動かす(エミュレーションなしで)

                        WebブラウザでOS動かしてどうすんだよ という根源的な疑問に回答が無いままとりあえずできちゃった。。 ※ コマンドが終了してもプロンプトが出ません。Enterを空打ちする必要があります (バグ) WasmLinuxは、WebAssembly "ネイティブ" なLinux環境です。カーネルもユーザーランドも、WebAssemblyのツールチェインでコンパイルされたWebAssemblyモジュール(をwasm2cでCにしたもの)です。 前回はカーネルしか動いていなかったんですが、今回はブラウザ上で ifconfig lo up して ping 127.0.0.1 したり top したり vi したりできます。BusyBox入ってるので。 ただしまだ実用性は皆無 です。Proof of Conceptって奴ですね。 前回の記事: 今回はMUSL libcを移植してBusyBoxが動くようになっ

                          WasmLinux: WebブラウザでLinuxカーネルとBusyBoxを動かす(エミュレーションなしで)
                        • WebAssemblyでOpenJDKのJavaランタイムを実装、JarファイルをそのままWebブラウザで実行できる「CheerpJ 3.0」正式リリース

                          WebAssemblyでOpenJDKのJavaランタイムを実装、JarファイルをそのままWebブラウザで実行できる「CheerpJ 3.0」正式リリース Webブラウザ上で実行可能なWebAssembly製JavaVM 前バージョンのCheerpJは、Javaのバイトコードを事前コンパイルによりJavaScriptコードに変換することで、Webブラウザ上でJavaアプリケーションを実行可能にするコンパイラを中心とするツール群でした。 今回の新バージョン「CheerpJ 3.0」では、WebAssemblyによってOpenJDKのJavaランタイムを完全に実装したと説明されています。これにより、JITコンパイラなどを含むJavaVMの機能をWebブラウザ上で実行できるようになりました。 Javaアプリケーションのソースコードは不要で、ビルド済みのJarファイルをそのままWebブラウザで実行

                            WebAssemblyでOpenJDKのJavaランタイムを実装、JarファイルをそのままWebブラウザで実行できる「CheerpJ 3.0」正式リリース
                          • Google、Google Sheetsの計算エンジンをWebAssemblyに最適化し、2倍の性能を実現したと発表

                            Google、Google Sheetsの計算エンジンをWebAssemblyに最適化し、2倍の性能を実現したと発表 GoogleはWebブラウザ上でスプレッドシート機能を提供する「Google Sheets」の計算エンジンの性能をWebAssembyで実装し、従来のJavaScriptによる実装と比較して性能を2倍に向上させたことを明らかにしました。 これにより単純なSUM計算から複雑なクエリまで、シート上でのあらゆる計算を始め、ピボットテーブルの作成、条件付きフォーマットなどさまざまな処理が高速になるとのことです。 この性能向上は、JavaScriptで構築されていた計算エンジンをWebAssemblyに最適化したことで実現していると説明されており、そのためにWebAssemby GC(ガベージコレクション)機能を用いたとのことです。 そのため現時点ではChromeとMicrosoft

                              Google、Google Sheetsの計算エンジンをWebAssemblyに最適化し、2倍の性能を実現したと発表
                            • WebAssemblyを進化させる「WASI Preview 2」が安定版に到達。OSや言語に依存しないコンポーネントモデルを実現

                              WebAssemblyを進化させる「WASI Preview 2」が安定版に到達。OSや言語に依存しないコンポーネントモデルを実現 WebAssembly関連仕様の標準化を行っているW3C WebAssembly Community GroupのWASI Subgroupミーティングにおいて、2024年1月25日に行われた投票で「WASI Preview 2」(もしくはWASI 0.2.0)仕様が承認され、安定版に到達したことが明らかになりました。 WASI Preview 2では、WebAssemblyアプリケーションがOSなどのプラットフォームに依存せず、さまざまなプログラミング言語で開発したWebAssemblyコンポーネントを組み合わせて開発できるように、「コンポーネントモデル」とそのインターフェイスを記述するIDL(Interface Definition Language)であ

                                WebAssemblyを進化させる「WASI Preview 2」が安定版に到達。OSや言語に依存しないコンポーネントモデルを実現
                              • 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などのソースコードと関連付け、変数参照、ブレークポイントなど可能に
                                • Announcing WinterJS · Blog · Wasmer

                                  Back to articlesAnnouncing WinterJSThe most performant JavaScript Service Workers server thanks to Rust and SpiderMonkey Follow up the WinterJS series reading about the recent production-ready WinterJS 1.0 release here. Today we are incredibly excited to announce WinterJS (wasmer/winterjs package). WinterJS is a JavaScript Service Workers server written in Rust, that uses the SpiderMonkey engine t

                                    Announcing WinterJS · Blog · Wasmer
                                  • WebAssemblyにスレッドやコンポーネントモデルなど導入へ、Bytecode Allianceがロードマップを公開

                                    WebAssemblyにスレッドやコンポーネントモデルなど導入へ、Bytecode Allianceがロードマップを公開 WebAssemblyやWebAssembly System Interface(WASI)の普及と改善を推進するBytecode Allianceは、今後のWebAssembly関連技術のロードマップを明らかにしました。 ロードマップは「Core Wasm」(WebAssembly本体)、「Component Model」(WebAssemblyコンポーネントモデル)、「WASI」の3つに分かれています。 WebAssembly本体には現在実装が勧められているガベージコレクションに加えて今後スレッドの実装予定などが、コンポーネントモデルにはコンポーネントのネーミングとバージョニングなどの実装予定などが、WASIにはWASI CLIやWASI HTTPなどの実装予定など

                                      WebAssemblyにスレッドやコンポーネントモデルなど導入へ、Bytecode Allianceがロードマップを公開
                                    • PythonのコードをWebAssemblyにコンパイルする「py2wasm」、Wasmerが発表

                                      PythonコードをWebAssemblyにコンパイルする「py2wasm」がWasmer社から発表された。WebAssembly版CPythonよりも約3倍高速だ。PythonコードをCPythonのAPIコールに変換するトランスパイラがベースになっている。 WebAssemblyランタイムの開発と提供を行っているWasmer社は、PythonのコードをWebAssemblyバイナリにコンパイルする「Py2wasm」を発表しました。 Announcing py2wasm – A #Python to #WebAssembly compiler that speeds up by 3x your Python apps!https://t.co/0v4YLZC7lY — Wasmer (@wasmerio) April 18, 2024 WebAssembly版CPythonよりも3倍高速

                                        PythonのコードをWebAssemblyにコンパイルする「py2wasm」、Wasmerが発表
                                      • 新たなサーバサイドJavaScriptランタイム「WinterJS 1.0」正式リリース、WebAssemblyへのコンパイルも可能。Wasmerが開発

                                        新たなサーバサイドJavaScriptランタイム「WinterJS 1.0」正式リリース、WebAssemblyへのコンパイルも可能。Wasmerが開発 WebAssemblyランタイム「Wasmer」の開発元として知られているWasmer社は、新しいサーバサイドのJavaScriptランタイム「WinterJS」の正式版となる「WinterJS 1.0」のリリースを発表しました。 ❄️ Introducing WinterJS 1.0 - the fastest WinterCG Javascript runtime in the world powered by Rust and SpiderMonkey ...and #WebAssembly compatible! Now supporting: React Server Components Cloudflare mode 150

                                          新たなサーバサイドJavaScriptランタイム「WinterJS 1.0」正式リリース、WebAssemblyへのコンパイルも可能。Wasmerが開発
                                        • サーバサイドの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サーバ
                                          • C言語でWASMインタプリタを実装した話

                                            概要 公式のcore testが全て(UTF8, WAT, SIMD関連のものは除く)通るWASMインタプリタをC言語でフルスクラッチで実装した。自作WASMランタイムで省略されがちなValidation Stageも実装した。この記事はWebAssembly Advent Calendar 2023の三日目の記事である。 目的 このWASMランタイムを実装するにあたり、「できるだけ仕様に従って実装する」ことを心掛けた。WASMの仕様書は以下のissueが立つほど読みにくいものとなっているが、ランタイムをどのように実装すべきかが詳しく書いてあり、一応仕様書を頑張って読めばランタイムが作れるようになっている。 この自作WASMランタイムの目的は、できるだけ仕様に従った実装を与えることで、仕様の理解を助けることである。早さや効率性よりも分かりやすさを優先しているため、実用には向かない。仕様書を

                                              C言語でWASMインタプリタを実装した話
                                            • ブラウザでRubyを動かす夢 - まめめも

                                              何に使うわけでもないけど、とにかくブラウザで Ruby を動かしたかったんです。 その夢が、ついにかなった気がします。 長年の念願だった Emscripten と xterm.js でブラウザで irb を動かすやつがついに(一応)できたhttps://t.co/ubentOzj7p— Yusuke Endoh (@mametter) 2024年1月27日 振り返ってみると、ここに来るまで 6 年もかかったようです。ちょっと嬉しくなったので経緯を書き残します。 Emscripten で Ruby をビルドする 2018 年、ふと思い立って、Emscripten で Ruby をビルドできるようにしました。 Emscripten は、要するに C/C++ プログラムを JavaScript や Wasm に変換してくれるコンパイラです。C で書かれた Ruby を Emscripten でビ

                                                ブラウザでRubyを動かす夢 - まめめも
                                              • WebAssemblyへのコンパイルだけに特化した新言語「Onyx」登場

                                                米Wasmer社が、WebAssemblyへのコンパイルだけに特化した新しいプログラミング言語「Onyx」をブログで紹介しています。 Onyxは(Wasmer社ではなく)Brendan Hansen氏が開発に3年を費やしたプログラミング言語です。 (2023/12/13 お詫びと訂正。当初OnyxをWasmer社が開発したと紹介していましたが、Wasmer社とは直接関係のないBrendan Hansen氏が開発した者でした。お詫びして訂正します。タイトルと本文の一部を修正しました) We're so excited about Onyx . A new programming language which solely compiles to #WebAssembly. Read all about it in our new blogpost:https://t.co/L6yZ9Ls5Q

                                                  WebAssemblyへのコンパイルだけに特化した新言語「Onyx」登場
                                                • WebAssemblyのガベージコレクションが正式機能に、最新版のChrome 119で。Firefoxも今月リリースのFirefox 120で正式機能になる見通し

                                                  WebAssemblyのガベージコレクションが正式機能に、最新版のChrome 119で。Firefoxも今月リリースのFirefox 120で正式機能になる見通し 2023年2月にリリースされたChrome 111から試験的実装となっていたChromeにおけるWebAssemblyのガベージコレクション機能(以下、WasmGC)が、10月31日にリリースされたChrome 119で正式機能になったことが明らかになりました。 Firefoxでも今月(2023年11月)21日リリース予定のFirefox 120においてWasmGCが正式機能になる見通しです。 WasmGCを利用することで、ガベージコレクション機能が言語のランタイムに含まれているJavaなどプログラミング言語をWebAssemblyで実装することが容易になるため、今後WebAssembly上でさまざまなプログラミング言語の実装

                                                    WebAssemblyのガベージコレクションが正式機能に、最新版のChrome 119で。Firefoxも今月リリースのFirefox 120で正式機能になる見通し
                                                  • アメリカに留学に来て1年が経った - pco2699’s blog

                                                    アメリカに来て1年が経ったので、1年で思い出深かったことなどをざっと振り返ろうかと思う。 2023春 2023夏 これから アメリカに来た過去の経緯などは以下を参照。 blog.pco2699.net blog.pco2699.net 2023春 2023春は今振り返っても「コンパイラデザイン」という授業が地獄だった、という記憶しかない。 www.cs.cmu.edu コンパイラデザインはCMUの中でOSと双璧をなす、課題がエグい授業として有名なのだが、噂通りであった。 www.quora.com The work is spread fairly evenly throughout the semester; each assignment is similarly sized, and they all have the same amount of time, roughly. It

                                                      アメリカに留学に来て1年が経った - pco2699’s blog
                                                    • WebAssemblyとWebGPUを用い、Webブラウザ上でStable Diffusion Turbo全体を高速実行可能な推論エンジン「ONNX Runtime Web 1.17」マイクロソフトから登場

                                                      WebAssemblyとWebGPUを用い、Webブラウザ上でStable Diffusion Turbo全体を高速実行可能な推論エンジン「ONNX Runtime Web 1.17」マイクロソフトから登場 ONNX Runtime WebがWebGPUに対応。Webブラウザ上でさらに高速な推論処理が可能になった。Stable Diffusion Turbo全体をWebブラウザ上で高速に実行可能で、RTX4090を用いた場合1秒以内で結果が出力される。 ONNX Runtime Webの基になっている「ONNX Runtime」はクロスプラットフォーム対応の推論エンジンです。TensorFlow、PyTorch、SciKit Learnなどをはじめとするさまざまな機械学習のモデルに対応し、これらで生成されたモデルによる推論処理をプラットフォームに依存せず実行するランタイムの役割を果たします

                                                        WebAssemblyとWebGPUを用い、Webブラウザ上でStable Diffusion Turbo全体を高速実行可能な推論エンジン「ONNX Runtime Web 1.17」マイクロソフトから登場
                                                      • 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で動的生成 - すぎゃーんメモ
                                                        • WasmGCについて予習する

                                                          この記事はWebAssembly Advent Calendar 2023 2日目の記事です. ガベージコレクタ(WasmGC)[1]が10月頃にChromeとFirefoxでデフォルトで有効になり,標準化目前ということで大いに盛り上がったのは記憶に新しいかと思います. これはChromeが対応したというよりはChromeが採用しているJavaScriptのランタイムであるV8がデフォルトでWasmGCが有効になったというのが正確な表現で,DenoでもDartからビルドしたWasmを実行する際にGCを有効にするフラグを立てる必要がなくなり,実行しやすくなったなぁと皆さんも感じているかと思います. -$ deno run --allow-read --v8-flags=--experimental-wasm-gc run.js +$ deno run --allow-read run.js

                                                            WasmGCについて予習する
                                                          • WasmLinux: LinuxカーネルをWebAssemblyにする

                                                            LinuxカーネルがWebブラウザで動いたらどう考えても面白い んだけど、そこに至るまではなかなか難しい道のりになる。その第一歩として、Linuxカーネルのユーザーランド版であるLKL( https://github.com/lkl/linux )をWebAssemblyにコンパイルして、wasm2cでC言語に変換した上、Visual Studio 2022でコンパイルしてWindows上で実行してみた。 まだWebブラウザでは動いていないが、思ったよりは簡単にWasmに移植できた(個人の感想です) ウケが良ければMUSL libc移植編 → デバイスドライバ活用編 → Webブラウザ上動作編と続ける感じで。。 EDIT: Visual Studioのスクリーンショットを撮りなおし。 memory-control はanonymousなmapしか救えないので、ここ数年スパンではエミュレーシ

                                                              WasmLinux: LinuxカーネルをWebAssemblyにする
                                                            • モバイルアプリ上の WebAssembly 製ライブゲームで発生した例外を捕捉して計測する - Mirrativ Tech Blog

                                                              こんにちは、エンジニアのちぎら(@_naru_jpn)です。ミラティブでは、配信中のゲームに視聴者が介入できるゲームとライブ配信が融合した次世代のゲーム体験を提供しており、この体験を ライブゲーミング と呼んでいます。 ライブゲーミングは、Unity から WebGL 向けにビルドされた WebAssembly 製のゲームを、アプリに配置したウェブブラウザ上で動作させることによって実現しています。*1 今回は UnityでモバイルWebGLゲーム開発を頑張る話 の「メモリリークによって発生するクラッシュ」にも書かれているような、捕捉は難しいがユーザー影響があるような例外の発生を捕捉して、計測をするための仕組み作りについて解説をします。 ライブゲームが動作する仕組み 例外を捕捉することを考える前に、ライブゲームがどのように動作しているのかを知る必要があります。 Unity の WebGL 向

                                                                モバイルアプリ上の WebAssembly 製ライブゲームで発生した例外を捕捉して計測する - Mirrativ Tech Blog
                                                              • Ruby on Browser

                                                                ruby.wasm で作ったページの紹介と ruby.wasm の使い方 スライド内のリンク - 文字化けを復元するよ https://tmtms.net/mojibake/ - シャッフル https://tmtms.net/shuffle.html?list=Ruby,Perl,Pytho…

                                                                  Ruby on Browser
                                                                • NGINX Unit、サーバサイドWebAssemblyにプレビュー対応。Webアプリケーション開発がWebAssemblyで可能に

                                                                  NGINX Unit、サーバサイドWebAssemblyにプレビュー対応。Webアプリケーション開発がWebAssemblyで可能に オープンソースで開発されている軽量なアプリケーションサーバ「NGINX Unit」(エンジンエックス ユニット)が、最新のバージョンである「NGINX Unit 1.31」でサーバサイドWebAssemblyにテクノロジープレビューとして対応し、WebAssemblyランタイムを搭載したことを明らかにしました。 NGINX UnitはこれまでPHPやPython、ruby、Perl、Go言語などに対応し、Webアプリケーション構築が可能でした。今回この対応言語にWebAssemblyが加わったことになります。 Server-side #WebAssembly has immense potential. In a new blog post, @LiamCr

                                                                    NGINX Unit、サーバサイドWebAssemblyにプレビュー対応。Webアプリケーション開発がWebAssemblyで可能に
                                                                  • どこでもGoodnotes

                                                                    どこでもグッドノート コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。 過去 2 年間、Goodnotes のエンジニアリング チームは、成功した iPad のメモ作成アプリを他のプラットフォームに導入するプロジェクトに取り組んできました。このケーススタディでは、2022 年の iPad アプリが、ウェブ テクノロジーを基盤とするウェブ、ChromeOS、Android、Windows に実装され、チームが 10 年以上にわたって取り組んできた同じ Swift コードを再利用した WebAssembly について説明します。 ウェブ、Android、Windows に Goodnotes が登場した理由 2021 年、Goodnotes は iOS と iPad 向けのアプリとしてのみ提供されていました。Goodnotes のエンジニアリング チームは、Go

                                                                      どこでもGoodnotes
                                                                    • Remixを使い始めた話 | Money Forward Kessai TECH BLOG

                                                                      こんにちは、23卒の新卒エンジニアのfujinoです。今回は弊社のサービスでReactのフレームワークであるRemixを使い始めた話をしようと思います。 背景 弊社では今までVue.jsのフレームワークであるNuxt.jsを用いてフロントエンドを実装していました。 これは、採用当時は生のhtmlが使えるのが良いと思っていたことや、Vue.jsの経験のあるフロントエンジニアがチームにいたことが理由でした。 しかし、最近ではTypescriptとの親和性や、コミュニティの大きさなどの理由からReactの方が勢いがあるように感じます。 弊社でも少し前からReactに移行することを決定し、現在進行形でNuxt.jsからReactへの移行プロジェクトを進めています。 Reactの主要なフレームワークとして、Next.jsとRemixが挙げられます。 両者の違いとして、Next.jsはSSG(Stat

                                                                        Remixを使い始めた話 | Money Forward Kessai TECH BLOG
                                                                      • Go を Wasm にビルドして Google Apps Script で動かす

                                                                        Go のコードで文字列の変換をする関数があり、これが Google スプレッドシート上の関数としても利用できれば検証[1]に便利かもしれないと思いました。 Google スプレッドシートでは Apps Script の関数をセル上で実行できるので、Go のコードを Wasm にビルドして JavaScript から呼び出すことができれば良いのではないかと考え、実際に試してみることにしました。 動作環境 Go 1.22.2 Apps Script の設定 Chrome V8 ランタイムを有効にする その他 macOS の pbcopy コマンド[2]を利用した手順を記載していますが、Linux 環境でも pbcopy を他の手段に置き換えることで同様に動作しました。 事前調査 Go を Wasm にビルドして GAS で動かす事例は見当たりませんでしたが、Rust を Wasm にビルドして

                                                                          Go を Wasm にビルドして Google Apps Script で動かす
                                                                        • Introducing Ruvy

                                                                          Opens in a new windowOpens an external siteOpens an external site in a new window We’ve recently open sourced a project called Ruvy! Ruvy is a toolchain that takes Ruby code as input and creates a WebAssembly module that will execute that Ruby code. There are other options for creating Wasm modules from Ruby code. The most common one is ruby.wasm. Ruvy is built on top of ruby.wasm to provide some

                                                                            Introducing Ruvy
                                                                          • VS Code Extensions and WebAssembly

                                                                            It is important to note that the component model does not support low-level (C-style) pointers. As such, you cannot pass object graphs or recursive data structures. In this respect, it shares the same limitations as JSON. To minimize data copying, the component model introduces the concept of resources, which we will explore in more detail in a forthcoming section of this blog post. The jco projec

                                                                              VS Code Extensions and WebAssembly
                                                                            • Rust+WebAssemblyを使ったWebアプリでの高速画像処理入門 - アダコテック技術ブログ

                                                                              要約 背景 WebAssembly (WASM) とは? Rust言語とは? サンプルアプリ概要 LBP特徴量計算をRustで実装 フロントエンド環境構築 バックエンド環境構築 スキーマ定義 Rust実装 WASMバイナリの生成 TypeScript実装 実行結果 まとめ メンバー募集しています! おまけ こんにちは!美味しいタコスを食べることを専門としているプロダクト開発部エンジニアの井上です。 要約 WebAssembly(WASM)、Rustは近年注目されている技術であり、これを利用することでWebアプリケーション上で高速な画像処理を実現できるよ。 我々も画像前処理を行っていたWindowsデスクトップアプリケーションを、WebAssembly+Rustを使用してWebアプリケーションに置き換えたよ。 Rust言語で実装した画像処理をWASMにコンパイル、そしてWebアプリケーション

                                                                                Rust+WebAssemblyを使ったWebアプリでの高速画像処理入門 - アダコテック技術ブログ
                                                                              • MoonBit

                                                                                > moon new hello> cd hello> cat main/main.mbtfn main { println(@lib.hello()) }> moon run mainHello, world! The Full-Product Collaborative DesignThe collaborative design of programming language, compiler, build system, and IDE ensures the integrity of the system, reduces component friction, and improves overall efficiencyGenerate significantly smaller WASM output than any existing solutions Program

                                                                                • 第56回 情報科学若手の会 Wasmを実行するunikernelとWasmコンパイラ

                                                                                  第56回 情報科学若手の会で発表したスライドです。

                                                                                    第56回 情報科学若手の会 Wasmを実行するunikernelとWasmコンパイラ