並び順

ブックマーク数

期間指定

  • から
  • まで

161 - 200 件 / 327件

新着順 人気順

wasmの検索結果161 - 200 件 / 327件

  • Reality check for Cloudflare Wasm Workers and Rust

    Reality check for Cloudflare Wasm Workers and Rust Published on: September 17, 2021 With native Rust support recently announced for Cloudflare Workers, I wanted to take a moment and write about the possibilities, but also the obstacles as a sort of reality check for myself. I’m extremely bullish about Cloudflare, Wasm, Rust, edge computing, and the recently announced native Rust support. If I’m no

      Reality check for Cloudflare Wasm Workers and Rust
    • ruby.wasmでひらがなの書き方を練習する紙を印刷するアプリケーションをつくりました - Qiita

      どんなアプリケーション? ひらがなの書き方を練習する紙を印刷するためのアプリケーションです。 なんでつくったの? 社内でアプリデプロイチャレンジというイベントがありました。 このイベントをきっかけに作りました。 特徴 印刷したらA4にぴったり 印刷して使うことを想定しています。 ブラウザの表示内容は印刷するとくずれがちです。 A4用紙にあわせて印刷出来ます。 フォントが教科書体 日本語になれていると気がつきませんが、 書き方の初学者にはOSのデフォルトフォントの書体は難しいです。 読みやすくはあるのですが、クセがあるため学習上は問題になります。 たとえばメイリオの「ふ」はこのような字体です。 字の練習用としてみると次のように不自然な点があります。 1画目が水平すぎる ハネがない 3画目が反っている 教科書体を採用しました。 具体的にはGoogleフォントを使ってKlee Oneを表示してい

        ruby.wasmでひらがなの書き方を練習する紙を印刷するアプリケーションをつくりました - Qiita
      • Wasm on Wasm - 借り初めのひみつきち

        ついに、 WebAssembly の自作エミュレータの上で動く自作 OS の上で自作 WebAssembly ランタイムが動くようになりました 🎉 つまり Wasm on Wasm ですね٩( 'ω' )و 以下に試験的に体験版設置してるので起動してみることができます。 meg-os.org もちろん PC98 や FM TOWNS でもなんとなく動きます。 基本的には MYOS で実装したものを若干調整して TOE に移植しただけです。最初に移植したときは動くアプリと動かないアプリがあって、調査しようとしたら wasm ランタイムを外部ライブラリに分離して no_std の関係で今まで使えた println! が使えなくなって原因の特定に若干手間取りました。 最終的には、内部で使ってる独自スタッククラスが原因でした。 独自スタックが必要な理由は、 wasm では関数1つ呼び出すたびに複

          Wasm on Wasm - 借り初めのひみつきち
        • WASMコンテナはこれまでのコンテナを置き換えるのか - エニグモ開発者ブログ

          こんにちは、22新卒で入社したエンジニアのhashinoです。 この記事は Enigmo Advent Calendar 2022 の9日目の記事です。 背景 皆さん、普段コンテナを利用していますか? エニグモでは、Kubernetesを活用していて、開発環境でもDockerを活用しています。 しかし、最近はWebAssemblyがコンテナを完全に置き換えるかもしれないという噂も耳にします。 既にKubernetesでは、kubelet API互換のKrustletが注目を集めています。kubeletは、ご存知の通りOCI準拠のコンテナを実行しますが、Krustletは、WebAssembly System InterfaceランタイムのWebAssemblyを実行するものです。Kubernetes上でPodの代わりにWebAssemblyを動作させることが可能になっています。 また、Fe

            WASMコンテナはこれまでのコンテナを置き換えるのか - エニグモ開発者ブログ
          • SQLite Wasm in the browser backed by the Origin Private File System - Chrome Developers

            In our blog post Deprecating and removing Web SQL, we promised a replacement for Web SQL based on SQLite. The SQLite Wasm library with the Origin Private File System persistence backend is our fulfillment of this promise. # About SQLiteSQLite is a popular, open-source, lightweight, embedded relational database management system. Many developers use it to store data in a structured, easy-to-use man

              SQLite Wasm in the browser backed by the Origin Private File System - Chrome Developers
            • Docker+Wasm で WASM をコンテナとして実行する | 豆蔵デベロッパーサイト

              昨年10月に Docker+Wasm がテクニカルプレビューとして発表されました。WebAssembly ランタイムをターゲットとしてビルドされた WASM バイナリーを OCI 互換の環境で実行できるようにするものです。 Introducing the Docker+Wasm Technical Preview | Docker ブログから、Docker+Wasm の実行イメージを引用します。 Docker Desktop では OCI ランタイム containerd を使用してコンテナイメージを管理・実行します。コンテナは runc などのさらに低レベルなライタイムにより実行されます。Docker+Wasm はこの runc にあたるレイヤーに WasmEdge を適用して WASM を実行します(図の右下)。Docker Desktop では containerd のサブプロセスで

              • Node.jsでつくるNode.js-WASMコンパイラ - もくじ - Qiita

                はじめに 「RubyでつくるRuby ゼロから学びなおすプログラミング言語入門」(ラムダノート, Amazon) という本に感銘を受けて、自分でもNode.jsで小さなプログラミング言語を作ってみるシリーズをやってみました。「ミニインタープリター」「ミニコンパイラー」ときて、三部作(?)の最後はミニNode.jsからWASMを生成する小さなコンパイラーに取り組んでいます。 前提環境 今回は私の環境である macOS 10.14 Mojave を前提にしています。また Node.js v10.13 で動作を確認しています。 Node.js-WASM コンパイラー目次 WASM コンパイラー - 01:WASMで定数戻り値を返す ... シンプルに整数値を返す実装と、WASMをNode.jsから実行 WASM コンパイラー - 02:四則演算を実装する ... 四則演算と、余りを実装 WASM

                  Node.jsでつくるNode.js-WASMコンパイラ - もくじ - Qiita
                • eBPF と Wasm: サービスメッシュデータプレーンの未来を探る

                  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が最近リリースされ、重要な変...

                    eBPF と Wasm: サービスメッシュデータプレーンの未来を探る
                  • Multi-Value All The Wasm! – Mozilla Hacks - the Web developer blog

                    This article is cross-posted on the Bytecode Alliance web site. Multi-value is a proposed extension to core WebAssembly that enables functions to return many values, among other things. It is also a pre-requisite for Wasm interface types. I’ve been adding multi-value support all over the place recently: I added multi-value support to all the various crates in the Rust and WebAssembly toolchain, so

                    • eBPFとWASMに思いを馳せる2022 ~TechFeed Conference 2022講演より | gihyo.jp

                      本記事は、2022年5月に開催されたTechFeed Conference 2022のセッション書き起こし記事「eBPFとWASMに思いを馳せる2022(Masaya Aoyama⁠)⁠ — TechFeed Conference 2022講演より」を転載したものです。オリジナルはTechFeedをご覧ください。 本日は「eBPFとWASMに思いを馳せる2022」というテーマで、CyberAgentの青山が発表させていただきます。 ふだんはKubernetes基盤のプロダクトオーナーとして勤めるほか、いくつかの会社で技術顧問やカンファレンスのCo-chairなどを務めています。また著書としては『Kubernetes 完全ガイド』(⁠インプレス)があります。 本日は、WASMとeBPF関連のプロダクトの紹介を行っていきたいと思います。 WASMのおさらい WASMのおさらいですが、WASMで

                        eBPFとWASMに思いを馳せる2022 ~TechFeed Conference 2022講演より | gihyo.jp
                      • Yewとは ~Rust+wasmで始めるweb開発でReactに勝つ?~

                        はじめに zenn初投稿の普通科高校生です。 Yewが素晴らしいので日本人の使用者がもっと増えればいいなと思います Yewとは YewはマルチスレッドなWebフロントをWebAssemblyを使って作ることができるRustのフレームワークです。 npm資産とRust/C資産の相互運用性 仮想DOMを使った効率のいいレンダリング JSXライクなHTMLマクロ をメリットとしています。 WebAssemblyとは WebAssemblyはブラウザで動くコンパイル可能な低レベル言語です。JavaScriptにくらべ高速な計算はできます。 まだ、DOMの呼び出しは遅い(JSを一度経由するため)ですが、今後早くなる予定です。 なぜ Rust? Rustは素晴らしいコンパイラと型システム、所有権により安全なコードを書くことができます。 StackOverflowによる調査で五年連続で最も愛されている言

                          Yewとは ~Rust+wasmで始めるweb開発でReactに勝つ?~
                        • 📕 入門WebAssemblyを読んでWASMをはじめた | Happy developing

                          Rick Battagline 著入門WebAssembly The Art Of WebAssemblyの翻訳書です。 本書を読みながらサンプルコードを写経したので感想を書いていきます。 著者のWebサイトには他にもWebAssemblyについてのトピックがあります。 サンプルコードはGitHubから見れます。 canvasに3000個のobjectの衝突判定をrenderingするサンプルを動かすところまでやりました。 https://wasmbook.com/collide.html collide.htmlきっかけRustでWASMのecosystemにふれていく前に素のWASMについてなんとなくでも理解したいと思っていました。(ある程度生成されたグルーコード読めないと落ち着かない) 本書ではWATを書いてWASMに変換して動かしながらWASMの仕様を追っていくので、WASMだけを

                          • GitHub - tinysearch/tinysearch: 🔍 Tiny, full-text search engine for static websites built with Rust and Wasm

                            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 - tinysearch/tinysearch: 🔍 Tiny, full-text search engine for static websites built with Rust and Wasm
                            • mod_wasm: run WebAssembly with Apache

                              Apache httpd is a modular web server that powers 31% of all websites you access every day. One of its most compelling features is the ability to extend it with new modules. Developers can choose among different modules to add or remove features like CGI, TLS, PHP, and many others. Today, we announce a new Apache module to run WebAssembly modules: mod_wasm. This module opens a new set of possibilit

                                mod_wasm: run WebAssembly with Apache
                              • ruby.wasmでrequire_relativeを使えるようにしたい - Qiita

                                背景 ruby.wasmというRubyのランタイムをWebAsssemblyにコンパイルした実行環境があります。 これを使うとブラウザでRubyスクリプトを実行出来ます。 実際にいくつかのアプリケーションが作られ、次のページで公開されています。 具体的にブラウザでRubyスクリプトを動かすには、たとえば、次のようにscriptタグにインラインでRubyスクリプトを記述します。 <html> <script src="https://cdn.jsdelivr.net/npm/ruby-head-wasm-wasi@0.5.0/dist/browser.script.iife.js"></script> <script type="text/ruby"> puts "Hello, world!" </script> </html>

                                  ruby.wasmでrequire_relativeを使えるようにしたい - Qiita
                                • FOSDEM 2024 - vscode-container-wasm: An Extension of VSCode on Browser for Running Containers Within Your Browser

                                  FOSDEM 2024/Schedule/Events/Developer rooms/Containers/vscode-container-wasm: An Extension of VSCode on Browser for Running Containers Within Your Browser vscode-container-wasm: An Extension of VSCode on Browser for Running Containers Within Your Browser One of the limitations of on-browser VSCode is the lack of Linux-based terminals and containers running completely within the browser. In this ta

                                    FOSDEM 2024 - vscode-container-wasm: An Extension of VSCode on Browser for Running Containers Within Your Browser
                                  • GitHub - SoundRabbit/Kagura: Frontend frame-work for wasm on Rust.

                                    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 - SoundRabbit/Kagura: Frontend frame-work for wasm on Rust.
                                    • jott - js_gc_in_wasm

                                      # JavaScript Garbage Collection with WebAssembly is Possible Today *by [@bwasti](https://twitter.com/bwasti)* **** tl;dr - Using [WeakRefs](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakRef), you can pretty easily implement automatic memory management for objects exposed from WebAssembly with JavaScript's garbage collector. *(Keep in mind "automatic memory ma

                                      • WebAssembly(WASM)とは何か、何ができるのか

                                        ここのところ「WebAssembly」の話題を目にする機会が個人的に増えました。 WebAssemblyは2015年にオープンソースプロジェクトとして公開されたものです。プロジェクトは、さまざまなWebブラウザの差異を吸収してどこでもアプリケーションが軽快に動作する環境を整備することを目的としてます。 プロジェクト公開直後から主要なWebブラウザ開発元がプロジェクトの趣旨に賛同したことから、2017年には主なWebブラウザで動作環境が整備されていました。その後も開発が進み、現在はさまざまな場面で実用フェーズに入りつつあるようです。 WebAssemblyプロジェクトのWebページ。主要ブラウザの対応状況も示されている(出典:WebAssemblyプロジェクトのWebページ) 古くはJavaが「どこでもアプリケーションが動作する(Run Anyware)環境」とされてきましたが、Webアプリ

                                          WebAssembly(WASM)とは何か、何ができるのか
                                        • GitHub - udzura/mrubyedge: Ruby on (Wasm)Edge - Zen and the Art of mruby for WASM

                                          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 - udzura/mrubyedge: Ruby on (Wasm)Edge - Zen and the Art of mruby for WASM
                                          • Wasmコンポーネントモデル、完成間近!WebAssemblyの最新動向についてchikoskiさんに聞いてきた!

                                            こんにちは、テックフィード白石です。 日本のエンジニア界隈をリードするエキスパートに、テクノロジーの最前線を語っていただくYouTube動画連載「Ask the Expert」の新着動画が公開されました! 今回は、WebAssemblyのエキスパートchikoskiさんに、WebAssemblyの最新動向について詳しく伺ってきました。 chikoskiさんのアカウントをぜひフォローしましょう! chikoskiさん(Wasm Night運営) ついでに白石のもフォロー推奨: 聞き手: テックフィード白石 以下に掲載するのは、インタビュー動画の内容の要約です(正確な書き起こしではありません)。 内容をフルにご覧になりたい方は、ぜひ動画をご視聴ください。 (ご質問、ご感想などはYouTubeのコメント、もしくはこの記事のコメント欄でも受け付けております) Wasm コンポーネントモデルが固まり

                                              Wasmコンポーネントモデル、完成間近!WebAssemblyの最新動向についてchikoskiさんに聞いてきた!
                                            • wasmを使ってRust製JVMをブラウザで動かしてみた - Qiita

                                              誰? 名前: r-chaser53 GitHub: https://github.com/rchaser53 Twitter: https://twitter.com/rChaser53 所属: LINE株式会社 言語開発とか好きな人(歴は1.5年くらい) rustfmtのお手伝いを今年はしてます 概要 Rustで作成したJVMをwasm-packを使ってブラウザで動かした 何も使わないで動かすよりはるかに楽だった ついでに見つけた便利なmoduleの紹介 JVM作成については別スライドをどうぞ 今回の成果物 Rust製JVM。wasmとしてブラウザで動かすこともできる https://github.com/rchaser53/rust-jvm wasm-packとは wasm-bindgenを使って生成したwasmファイルにRustとJavaScriptのFFIのランタイムを追加するビル

                                                wasmを使ってRust製JVMをブラウザで動かしてみた - Qiita
                                              • Serverless Haskell - GHCのWASMバックエンドで Haskell を Cloudflare Workers に載せる

                                                Serverless Haskell - GHCのWASMバックエンドで Haskell を Cloudflare Workers に載せる TL;DR GHC 9.10 から WASM バックエンド(クロスコンパイラ)が JavaScript FFI に対応したので、Haskell コードを Cloudflare Workers 上で動かしてみたよ。快適に開発するための環境構築・ハック方法と、GHCの出力をCloudflare Workers 向けに修正する方法を紹介するよ。 はじめに──Asterius から GHC WASM バックエンドへ GHC は 9.6 から WASM バックエンド(クロスコンパイラ)を搭載していますが、GHC 9.10 から WASM バックエンドが遂に JavaScript FFI に対応しました。 従来から C FFI には対応しており、これを使って F

                                                  Serverless Haskell - GHCのWASMバックエンドで Haskell を Cloudflare Workers に載せる
                                                • 高速で Markdown を HTML に変換してくれる『markdown-wasm』を使ってみた

                                                  はじめに 今回は, MOONGIFT さんで紹介されていた『markdown-wasm』について紹介します. その名の通り WebAssembly を使っているとのことでかなり高速で動くみたいです. まだ細かい検証はできていないんですが, 備忘録として概要と導入方法について紹介します. 『markdown-wasm』とは? 『markdown-wasm』は, C のコードを WebAssembly に移植した超高速な Markdown パーサーです. 主な特徴は以下です. 依存関係なし(31 kB gzipped) どこでも実行ができ, かつ安全(WebAssembly なので分離されたメモリで実行できる) シンプルな API とても速い md4c(C で作られた Markdown parser) をベースに作られている - (CommonMark の仕様に準拠) 速度面では, 公式ページ

                                                    高速で Markdown を HTML に変換してくれる『markdown-wasm』を使ってみた
                                                  • Go playground WASM

                                                    package main import "fmt" func fibonacci(c, quit chan int) { x, y := 0, 1 for { select { case c <- x: x, y = y, x+y case <-quit: fmt.Println("quit") return } } } func main() { c := make(chan int) quit := make(chan int) go func() { for i := 0; i < 12; i++ { fmt.Println(<-c) } quit <- 0 }() fibonacci(c, quit) } package main import "fmt" func fibonacci(c, quit chan int) { x, y := 0, 1 for { select {

                                                    • WASM Hub

                                                      • GitHub - teamortix/golang-wasm: Golang-WASM provides a simple idiomatic, and comprehensive API and bindings for working with WebAssembly for Go and JavaScript developers

                                                        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 - teamortix/golang-wasm: Golang-WASM provides a simple idiomatic, and comprehensive API and bindings for working with WebAssembly for Go and JavaScript developers
                                                        • Proxy-Wasm: Wasmを利用したPlugin機構の開発

                                                          WebAssembly night #10 https://emsn.connpass.com/event/192221

                                                            Proxy-Wasm: Wasmを利用したPlugin機構の開発
                                                          • GitHub - jnmaloney/WebGui: An example demo of IMGUI (Immediate Mode GUI) on the web. Using only WebGL, GLFW and ImGui. Suitable for being compiled to web assembly (WASM).

                                                            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 - jnmaloney/WebGui: An example demo of IMGUI (Immediate Mode GUI) on the web. Using only WebGL, GLFW and ImGui. Suitable for being compiled to web assembly (WASM).
                                                            • Introducing the WebAssembly Hub, a service for building, deploying, sharing, and discovering Wasm…

                                                              Extending the Envoy ProxyOne of the major strengths of the Envoy Proxy is that it can be extended in many ways, through filters, tracers, health checkers, monitors, and more. Since the microservices environment is highly dynamic and rapidly changing, this extensibility allows Envoy to swiftly adapt and adjust. The main way to add functionality to Envoy and to modify its behavior is to introduce ne

                                                                Introducing the WebAssembly Hub, a service for building, deploying, sharing, and discovering Wasm…
                                                              • サーバサイドはWebAssemblyの夢を見るか? – Node.jsでwasmってみた - GMOインターネットグループ グループ研究開発本部

                                                                2019.09.27 サーバサイドはWebAssemblyの夢を見るか? – Node.jsでwasmってみた はじめに こんにちは。次世代システム研究室のS.T.です。 Webの技術に興味のある方は「WebAssembly(wasm)」というキーワードを聞いたことがあるかもしれません。2019年に入ってからGoogle Earthのwasm実装のベータ版がリリースされたり、ディープな勉強会が開催されたり、密かな盛り上がりを見せている技術です。特に「Assembly」という語が入っているだけで私のような低レイヤ好きには非常に魅力的なものに見えます(実態はあまりAssembly感がないですが……)。 しかし、ゲームや動画など重量級のコンテンツを扱わないWebサイトでは活用できる機会はなかなかありません。さらに、Google V8に代表される高速なJavascriptエンジンの存在により、wa

                                                                  サーバサイドはWebAssemblyの夢を見るか? – Node.jsでwasmってみた - GMOインターネットグループ グループ研究開発本部
                                                                • Postgres WASMを支える技術

                                                                  Intro 10月3日にWebAssemblyを用いてWebブラウザにx86の仮想マシンを構成することで、PostgreSQLをWebブラウザ上で実行可能にした「Postgres WASM」がオープンソースで公開されました。 以前から気になっていたSupabaseが公開していたこと、最初にSnapletという企業がOSSで公開しておりそれをフォークして完成させたこと、色々気になることばかりでしたので自分なりに調べて深掘りしてみました。

                                                                    Postgres WASMを支える技術
                                                                  • proxy-wasm-rust-sdkとその周辺技術

                                                                    proxy-wasm-rust-sdk?proxy-wasm-sdk-rushはWebAssembly for ProxiesというApplication Binary Interface(以降ABIと表記)に従って実装されているライブラリです。 予め提供されているtraitに実装を追加していくことで簡単にwasm-filterを作成できます。 proxy-wasm-rust-sdkの使い方早速、wasm-filterを作っていきましょう。 作り方は大まかに以下の3つのstepになります。 cargo.tomlのdependenciesに proxy-wasm を追加lib.rsに_start()を作成任意のcontextの実装を作成それぞれの手順について少しだけ丁寧に見ていきます。 cargo.tomlのdependenciesに proxy-wasm を追加 [dependencies

                                                                      proxy-wasm-rust-sdkとその周辺技術
                                                                    • GitHub - fiberplane/fp-bindgen: Bindings generator for full-stack WASM plugins

                                                                      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 - fiberplane/fp-bindgen: Bindings generator for full-stack WASM plugins
                                                                      • Internal Design - The `wasm-bindgen` Guide

                                                                        Design of wasm-bindgen This section is intended to be a deep-dive into how wasm-bindgen internally works today, specifically for Rust. If you're reading this far in the future it may no longer be up to date, but feel free to open an issue and we can try to answer questions and/or update this! Foundation: ES Modules The first thing to know about wasm-bindgen is that it's fundamentally built on the

                                                                        • TinyGo の wasm ターゲットは文字列をどう扱うのかを調べた

                                                                          WebAssembly の仕様には文字列型が存在しないが、TinyGo では文字列を扱う関数を wasm ターゲットでビルドできる。ビルドした WebAssembly モジュールの内部ではどういった扱いになっているのか気になったので調べてみた。 事前準備 macOS を使っているので、最初に Homebrew を使って TinyGo と WABT をインストールした。

                                                                            TinyGo の wasm ターゲットは文字列をどう扱うのかを調べた
                                                                          • wasm-image-optimization

                                                                            Cloudflare workers import { optimizeImage } from 'wasm-image-optimization'; Next.js(Webpack) import { optimizeImage } from 'wasm-image-optimization/next'; ESM(import base) import { optimizeImage } from 'wasm-image-optimization/esm'; CJS(file base) import { optimizeImage } from 'wasm-image-optimization/node'; function // quality: 1-100 optimizeImage({image: ArrayBuffer, width?: number, height?:numb

                                                                              wasm-image-optimization
                                                                            • ちょっとした疑問: Krustlet(Kubernetes)で動くWASMアプリケーションはコンテナか? - inductor's blog

                                                                              はじめに 先日開催されたKernel/VM探検隊online part2ではWASMが大きなトピックの1つでした。 connpass.com 僕はWASMに関して一切話しませんでしたが、以前からKubernetesにおけるWASMの活用の話や、CDNなどのエッジクラウド環境におけるWASMの活用については情報を集めていました。 TechFeed Summit#3 - コンテナ技術を語り尽くす!では、エッジにおけるKubernetes利用のこれからについてもLTでお話させていただき、その中で一つの利用例としてKrustletとWASMの話も言及しています。 speakerdeck.com 下記スライドではKrustletのアーキテクチャをKubeletと比較していますが、見ての通り、これまで「コンテナ」が動いたPodを置き換える形として「WASM」が動いていることがわかります。 WASMはコ

                                                                                ちょっとした疑問: Krustlet(Kubernetes)で動くWASMアプリケーションはコンテナか? - inductor's blog
                                                                              • Rust meets Lucet:ネイティブアプリでwasm形式の動的リンクプラグインを実行する

                                                                                はじめに これはWebAssembly Advent Calendar 2019の8日目のエントリです。 (空いていたので飛び入り参加です) 12月28日にコードを書き始めて、大晦日に記事公開となりました。 この記事ではRust製アプリにwasm形式のプラグインを動的にリンクして実行する方法を紹介します。 WebAssemblyのランタイム環境にはFastlyが開発したLucetを用います。 これによりWebブラウザを通さず、Rustアプリ上で直接WebAssemblyコードが実行できます。 WebAssemblyコードはLucetのコンパイラで事前にネイティブコードにコンパイルしますので、Rustで書かれたコードに近い速度で実行できます1。 プラグインにwasm形式を採用すると、特定の言語に縛られずにプラグインを開発できるというメリットがあります。 またファイルアクセスなどの制限のかかっ

                                                                                • WASM3の末尾呼び出しVMがかしこい - Qiita

                                                                                  (EDIT: 末尾呼び出しVMって何だ.. direct-threading VMを末尾呼び出しで実現しているのが面白いと思ったもんで...) WebAssemblyの インタプリタ であるWASM3( https://github.com/wasm3/wasm3 )が良いデザインをしていると思うメモ。 (WASM3はM3と呼ばれていたインタプリタプロジェクトが移動してきたもの。というわけでWASMのバージョン番号ではない。) かしこい所 基本的にはリポジトリの README.md に述べられている。 コンパイラの末尾呼び出し最適化を期待してシンプルに記述 WASM3のVM命令は以下のようなC言語関数で実装される: d_m3OpDef (GetGlobal) // ★ これはマクロで次節のようなプロトタイプに展開される { // ★ 次の2行が実際の処理 i64 * global = im

                                                                                    WASM3の末尾呼び出しVMがかしこい - Qiita