並び順

ブックマーク数

期間指定

  • から
  • まで

201 - 240 件 / 1537件

新着順 人気順

WebAssemblyの検索結果201 - 240 件 / 1537件

  • 詳説WebAssembly

    CMU #51の発表資料です。 webブラウザでC/C++を始めとしたJavaScript以外の言語を使う謎テクノロジーWebAssemblyについて解説します。概要から始まり、Hello worldを通してWebAssembly APIの動作、C/C++ - JavaScript連携の方法について解説します。Read less

      詳説WebAssembly
    • 2016/05/11時点でWebAssembly関連の情報を整理してみた - Qiita

      フロントエンドとしては絶対に避けて通れないWASM、そろそろエッジ環境なら試せるツールが揃ってきたということで、手を出してみた。 自分がどうしてもローレベルに弱いので、たぶん色々間違ってるんだけど、識者各位は指摘お願いします。 現在の仕様はここ https://github.com/WebAssembly/spec Chrome Canary と Firefox Beta で動作可能 WASMのゴール asm.jsに比べてサイズが小さく高速にデコード可能なバイナリフォーマット 将来的な目標として、DOMアクセスとそのGCインテグレーション これが達成されれば、ブラウザにおいて JS がファーストプライオリティな言語という状態ではなくなる とはいえ既存の資産が多いのでなくなることはないだろうが wasmのスペック自体は小さいのでおそらくブレようがないが、DOMの実装とGCは各ベンダごとに別々

        2016/05/11時点でWebAssembly関連の情報を整理してみた - Qiita
      • [速報」Blazor WebAssemblyが正式リリース。C#/.NETでWebアプリケーションを開発可能に。Microsoft Build 2020

        [速報」Blazor WebAssemblyが正式リリース。C#/.NETでWebアプリケーションを開発可能に。Microsoft Build 2020 オンラインイベント「Microsoft Build 2020」を開催中のマイクロソフトは、「Blazor WebAssembly 3.2.0」のリリースを発表しました。 Blazor WebAssemblyは、.NETとC#などを用いてWebブラウザ上で実行可能なWebアプリケーションを開発できるフレームワークおよび実行系です。 Blazor WebAssembly 3.2.0はBlazor WebAssemblyとしてフル機能が実装され、本番運用に対応したバージョンです。これによりBlazor WebAssemblyは正式版としてリリースされたことになります。 It's here!!! Blazor WebAssembly 3.2.0

          [速報」Blazor WebAssemblyが正式リリース。C#/.NETでWebアプリケーションを開発可能に。Microsoft Build 2020
        • Rust で WebAssembly を出力する

          もう結構前になりますが、Rust で Emscripten を利用することなく WebAssembly の出力ができるようになりました。それにより、Rust を使った WebAssembly の開発が現実的な選択肢としてさらに力を帯びてきました。 自分の勉強で Rust から WebAssembly に出力するプログラムを書いてみたので、その道筋をご紹介することで自分のような Rust 初心者の方々の WebAssembly 開発の助けになればと思い、この記事を投稿しました。 もし記事中に間違い等がありましたら、是非 @tkihira までご連絡ください。 Emscripten との依存関係を切った Rust つい最近まで、WebAssembly の出力は Emscripten を使うことがほとんどでした。Emscripten は、元々は他言語のプログラムを JavaScript に変換す

          • 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がロードマップを公開
            • KubernetesのノードとしてWebAssemblyランタイムを用いる「Krustlet」、マイクロソフトが公開 - Publickey

              KubernetesのノードとしてWebAssemblyランタイムを用いる「Krustlet」、マイクロソフトが公開 Dockerコンテナによって実現された軽量で高速に起動するアプリケーション実行環境は、多数のコンテナから構成される分散アプリケーションの普及を大きく後押ししました。 分散アプリケーションの普及は、さらに軽量かつセキュアなDockerコンテナ実現へのニーズへとつながり、GoogleのgVisorやAmazon Web ServicesのFirecrackerといったセキュアなコンテナランタイムの実装や、同じくAWSによるコンテナに最適化したLinuxベースの軽量OSである「Bottlerocket」などを生み出すことになりました。 しかしいくらLinuxを軽量化したところで、OSであるLinuxの軽量化や機能の簡素化には限界があり、それはコンテナランタイムに対しても同様です。

                KubernetesのノードとしてWebAssemblyランタイムを用いる「Krustlet」、マイクロソフトが公開 - Publickey
              • RubyとWebAssemblyの関係についてわかる範囲でまとめる | うなすけとあれこれ

                はじめに 2021年1月にv1.0がリリースされたWasmerにRuby Gemが存在することに触発されて調べてみました。RubyとWebAssemblyが関わっているものについてわかる範囲でまとめ、軽くどのようなものかを書いていきます。 僕自身、業務はおろかプライベートでもWASMを書いたことはなく浅い理解しかしていないですが…… WebAssembly (WASM)とは WebAssembly は最近のウェブブラウザーで動作し、新たな機能と大幅なパフォーマンス向上を提供する新しい種類のコードです。基本的に直接記述ではなく、C、C++、Rust 等の低水準の言語にとって効果的なコンパイル対象となるように設計されています。 この機能はウェブプラットフォームにとって大きな意味を持ちます。 — ウェブ上で動作するクライアントアプリで従来は実現できなかった、ネイティブ水準の速度で複数の言語で記述

                  RubyとWebAssemblyの関係についてわかる範囲でまとめる | うなすけとあれこれ
                • 出来ることは計算だけ?「WebAssembly」は一体なにが新しいのか〜エンジニアが語る技術愛 #03〜|ミクシル

                  ミクシィには、探究心溢れるエンジニアがたくさん在籍しています。 その探究心は業務で扱う技術にとどまらず、趣味で書いているプログラムだったり、個人的に研究している言語だったりと、自身の気になった技術への追求も留まることを知りません。そこで、社内のエンジニアに“好きな技術”について、思う存分に語ってもらうシリーズを始めました。 ルールはこの通り。 ・業務で使っている技術でも、使われていない技術でもOK ・あくまでも個人的な見解で ・その技術のどこが面白いのか ・愛を込めて語り尽くしてもらう 第3回目は、新規プロダクトを目下開発しているSREグループの神谷に、「WebAssembly」の魅力をたっぷり語ってもらいました。 Webの技術でもないしアセンブリでもない? ━━早速ですが、今アツい技術について教えてください! 今回話すのは「WebAssembly(以下Wasm)」についてです。生まれた背

                    出来ることは計算だけ?「WebAssembly」は一体なにが新しいのか〜エンジニアが語る技術愛 #03〜|ミクシル
                  • 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が開発
                      • Webブラウザで高速な演算を可能にする低水準言語asm.jsと、WebAssembly詳解ーasm.jsの仕組みとコーディング例

                        Webブラウザで高速な演算を可能にする低水準言語asm.jsと、WebAssembly詳解ーasm.jsの仕組みとコーディング例 清水智公(Mozilla) 連載の第1回目は asm.jsの紹介と、asm.jsが導入された背景を概観しました。 Just in Timeコンパイルによって高速にJavaScriptを実行できるようになりましたが、立ち上がりが遅い、やり直しが発生する、コンパイルによって一時的に負荷が向上する、といった問題が残されています。 これを解決するためにプログラムの実行を行うより前にネイティブコードへとコンパイルするAhead of Timeコンパイルを導入したいのですが、JavaScriptは柔軟すぎて効率の良いネイティブコードを出力することが難しい、という問題がありました。 asm.jsはこの問題に一定の解をあたえるものとなります。今回はそのasm.jsがどのようなも

                          Webブラウザで高速な演算を可能にする低水準言語asm.jsと、WebAssembly詳解ーasm.jsの仕組みとコーディング例
                        • GitHub - emscripten-core/emscripten: Emscripten: An LLVM-to-WebAssembly Compiler

                          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 - emscripten-core/emscripten: Emscripten: An LLVM-to-WebAssembly Compiler
                          • Rust+WebAssemblyのオープンソースライブラリ「Photon」で高速な画像処理が可能になる - ITnews

                            photon https://silvia-odwyer.github.io/photon/ photonの特徴 引用: photon from GitHub 「Photon」は、WebAssemblyにコンパイルされる高性能のRust画像処理ライブラリ。モジュールに組み込むことで、Web・ネイティブ上で高速な画像処理が可能になります。 Photonを試してみる ヘッダーにある「ファイルを選択」から、処理したい画像をアップロード。 続いて、左メニューに用意された様々なエフェクトを画像に提供していきます。プレビューとともに処理にかかった時間も併記され、高速な処理を実感できます。 画像の反転にかかる時間もわずか47ms! Photonの導入 https://github.com/silvia-odwyer/photon オープンソースとして提供されており、npmで既存プロダクトにモジュールとし

                              Rust+WebAssemblyのオープンソースライブラリ「Photon」で高速な画像処理が可能になる - ITnews
                            • Ichigo Lispコンパイラ完全解説

                              Ichigo Lispコンパイラ完全解説 はじめに この記事では私がWebAssemblyで書いた Ichigo Lispという LISP 1.5実装のコンパイラのソースコードをすべて解説する。 というのも、最近とあるコンパイラの本を読んで 「説明が特定の実装に基づいてる割にそのソースが一部しか載ってない」 という不満を感じたのだが、自分で書いたコンパイラの記事 を読み返してみると、コンパイラのソースコードが一切出てこないことに気づいた。 こんな記事を書きながらよく人様の本に不満を持てたものだと 瀬戸内海より深く反省したので、 ここにIchigo Lispのコンパイラのすべてのソースコードを解説する。 想定読者とか Ichigo Lispのコンパイラは(ほとんど)すべてLISP 1.5で書かれている。 LISP 1.5特有のややこしい機能などは使っていないので、 Common Lisp、S

                              • マイクロソフト、.NET中間言語をWebAssemblyにコンパイルする「Jiterpreter」をBlazor WebAssemblyに搭載へ、.NET 8で

                                マイクロソフト、.NET中間言語をWebAssemblyにコンパイルする「Jiterpreter」をBlazor WebAssemblyに搭載へ、.NET 8で マイクロソフトは今年(2023年)11月にリリースが予定されている.NET 8のBlazor WebAssemblyにおいて、.NET中間言語をWebAssemblyに動的にコンパイルすることで、Blazor WebAssemlbyの高速化を実現する機能を備えた「Jiterpreter」を搭載予定であることを明らかにしました。 BlazorはWebAssemblyで.NETランタイムを実装している そもそもBlazor WebAssemblyは、.NETとC#などを用いてWebブラウザ上で実行可能なWebアプリケーションを開発できるフレームワークおよびランタイムです。 一般にWebブラウザはJavaScriptで記述されたコードを

                                  マイクロソフト、.NET中間言語をWebAssemblyにコンパイルする「Jiterpreter」をBlazor WebAssemblyに搭載へ、.NET 8で
                                • KubernetesのノードとしてWebAssemblyランタイムを用いる「Krustlet」、CNCFのサンドボックスプロジェクトに申請

                                  KubernetesのノードとしてWebAssemblyランタイムを用いる「Krustlet」、CNCFのサンドボックスプロジェクトに申請 オープンソースとして開発されている「Krustlet」は、KubernetesのノードとしてDockerコンテナではなく、WebAssemblyのランタイムを用いることができるようになるソフトウェアです。 Krustletは、KubernetesのノードエージェントであるKubeletとして振る舞い、自身をKubernetesのノードとして登録します。すると、WebAssemblyアプリケーションをPodとして実行できるようになるのです。 つまり、OS上のサンドボックスとしてDockerコンテナを用い、そのなかでWebAssemblyランタイムを実行するのではなく、WebAssemblyをOS上のサンドボックスとして用いる、ということです。 これにより

                                    KubernetesのノードとしてWebAssemblyランタイムを用いる「Krustlet」、CNCFのサンドボックスプロジェクトに申請
                                  • Rustでわかる! WebAssemblyのメリット~処理速度の違いを、サンプルを作りながら体験しよう

                                    本連載では、Webブラウザー上でJavaScriptとともに動作できるバイナリ形式のプログラムファイル「WebAssembly」を、Rustプログラミング言語で実装する方法を説明していきます。前回はRust言語の基礎を説明しました。今回はいよいよ、Rust言語でWebAssemblyを実装していきます。また実装したサンプルを利用して、WebAssemblyのメリットなどを説明します。 はじめに 本連載では、Webフロントエンド開発において注目されているバイナリ形式のプログラムファイルWebAssemblyを、Rustで実装して活用する方法を説明しています。初回記事ではWebAssemblyの背景およびRust開発環境の作成について、前回記事ではRust言語の基本的な言語仕様について説明しました。 今回はこれまで説明した内容を利用して、実際にRust言語でWebAssemblyを実装していき

                                      Rustでわかる! WebAssemblyのメリット~処理速度の違いを、サンプルを作りながら体験しよう
                                    • GitHub - rinsuki/play-flv-in-browser: Play FLV in Browser!

                                      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 - rinsuki/play-flv-in-browser: Play FLV in Browser!
                                      • Vim on Wasm on Web Worker on Browser with Atomics - はやくプログラムになりたい

                                        この記事は以前の rhysd.hatenablog.com の続編で,WebAssembly (Wasm) にポーティングした Vim の話です. github.com TLDR Wasm にコンパイルした Vim のコードを Web Worker(ワーカスレッド)の中で動かすことで,メインスレッドで行われるユーザのインタラクションをエディタがブロックしなくなりました. また,イベントループのポーリングを Atomics.wait() でやってキー入力を共有メモリバッファで受け取ることで Emterpreter を捨て,実行速度・安定性・バイナリサイズ・ビルド時間・メンテ性が向上しました. 実装: Run Vim in Web Worker and say goodbye to Emterpreter by rhysd · Pull Request #30 · rhysd/vim.wasm

                                          Vim on Wasm on Web Worker on Browser with Atomics - はやくプログラムになりたい
                                        • WebAssembly の利用シナリオを調べる

                                          参考 : Frequently asked questions 加えて wasm はパフォーマンスの他に移植生も考慮されて設計されています。これによって C++ などでクライアント向けに実装された SDK なども Web に移植できる可能性も生まれます。他にもゲームの SDK, 画像コーデック, 機械学習のモデル、言語ランタイムなども対象にできるでしょう。 とはいえ現実世界で使えているのか Google みたいなトップクラスの技術力の会社だけじゃない?と思われるかもしれません。次はプロダクションの例を調べてみます。 プロダクションでの導入例 Web アプリではまだそこまで実装例は多くないですが、着実にプロダクションでの使用例は年々増えているようです。Google は Meet だけでなく Earth でもプロダクション投入しているようで流石ですね… Google Earth Google

                                            WebAssembly の利用シナリオを調べる
                                          • LLVM入門 - javascript使いがLLVM(Rust:inkwell)でjavascriptをJITコンパイルするまで

                                            コンパイラ基盤であるLLVMについて、全く知識がない私が、 javascriptソースコードをパースしLLVMでコンパイルできるようになりました。 LLVMの記事は数多くありますが、初心者向けの記事が少なく感じたため、 本記事では、できる限り分かりやすくLLVMについて紹介できる記事を書こうと思います。 ソースコードは、こちらに置いています。 自己紹介 ふだん、javascriptやpythonなどインタプリタ言語を使うエンジニアです。 LLVMについて、全く知識がなかった人間です。 背景 過去に、おもちゃのブラウザ自作をやってみました。 HTMLとCSSを解析し、レンダリングするところを書き、基本的な動作を知ることができました。 HTMLとCSSとくれば、次はJSだと思い、JSを実行するエンジンを書いてみたくなりました。 ただし、WebブラウザのAPIとJS実行エンジンをバインディングす

                                              LLVM入門 - javascript使いがLLVM(Rust:inkwell)でjavascriptをJITコンパイルするまで
                                            • 【ブクマ推奨】React、VueからWebAssemblyまで!LT動画12本公開🎉 — TechFeed Conference「後夜祭」(2)

                                              「TechFeed Conference 2022後夜祭」第二弾!今回はReact、Vue、Angular、Web3D、WebAssembly、フロントエンド設計に関するLT動画を12本公開です! こんにちは、TechFeed CEOの白石です。 2022年5月14日に開催された「エンジニアの祭典」TechFeed Conference 2022は、「日本を代表するテックエキスパート50名による大LT大会」という前代未聞の取り組みとして、大盛況のうちに幕を閉じました。 ですが、TechFeed Conferenceはまだまだ終わりません! 本イベントは、エキスパートの貴重な知見を一人でも多くの方々に届けるべく、企画当初から 「全セッション、永久保存版」 を掲げて、アーカイブ化にも全力を尽くすと誓っておりました。 本日より6/10までの間、「TechFeed Conference 2022後

                                                【ブクマ推奨】React、VueからWebAssemblyまで!LT動画12本公開🎉 — TechFeed Conference「後夜祭」(2)
                                              • WebAssembly を使って自作言語をブラウザで動かしてみよう - はやくプログラムになりたい

                                                今日 Google の開発者ブログで WebAssembly の記事が載っていました.どうやら最新の Chrome では WebAssembly が動くようです. googledevjp.blogspot.jp 自作言語のコンパイラを LLVM フロントエンドとしてつくっているので,これは試さないわけにはいきません. github.com というわけで,さっそく試してみます. 準備 1. Chrome 直接 V8 をビルドするのは億劫なので Chrome のバイナリを落としてきて使います.Chrome 51.0.2677.0 以降であれば OK です.Canary 版をダウンロードしてきてインストールします. 次に chrome:flags にアクセスして WebAssembly を有効にします. 2. LLVM WebAssembly のためのアセンブリを吐くには LLVM の expe

                                                  WebAssembly を使って自作言語をブラウザで動かしてみよう - はやくプログラムになりたい
                                                • Webブラウザで高速な演算を可能にする低水準言語asm.jsと、WebAssembly詳解ーasm.jsを高速に動作させる新しいコンパイラーターゲットWASMとは? | HTML5Experts.jp

                                                  現在はその仕様策定が固まり、ブラウザへの実装も済み、リリースを待つばかりです。またコンパイラへの実装も進んでいます。特にBinaryen(後述します)への最適化処理の実装のおかげで、asm.jsより高速に実行できるようになりました。 下記のグラフ(MozillaのHacksブログより引用)はasm.jsとWASMの速度を比較したものです。値はネイティブの実行スピードに対する相対的な速度を表していて、1に近づけは近づくほどネイティブに近いスピードで動いていることを表しています。Bulletを除く全てのベンチマークでasm.jsより高速に動いています。これはコンパイラの行う最適化処理のおかげです。 この評価は2016年10月末の時点に、Intel Core i7-2600 @ 3.40GHzで動作するLinux版 64-bit Firefox 52 (Nightly)で計測されました。現在は最

                                                    Webブラウザで高速な演算を可能にする低水準言語asm.jsと、WebAssembly詳解ーasm.jsを高速に動作させる新しいコンパイラーターゲットWASMとは? | HTML5Experts.jp
                                                  • GitHub - AssemblyScript/assemblyscript: A TypeScript-like language for WebAssembly.

                                                    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.

                                                      GitHub - AssemblyScript/assemblyscript: A TypeScript-like language for WebAssembly.
                                                    • GoのWASMがライブラリではなくアプリケーションであること - 株式会社カブク

                                                      はじめに がんばって書いた書籍が低評価で少々しょんぼりしているあんどうです。まぁ、つい力が入りすぎて袋小路に思い切り突っ込んだ結果抜けられなくなることってあるよね。あるある。そんなわけで今日はできるだけ力を入れずテンション低めにサクッと行きます。 で、GoのWASM。大道の真ん中をまっすぐに歩まれているみなさんはWASMするときはRustかいっそC/C++をemscriptenでってことになると思いますが、私はしょせん路傍の石の下で低評価が目に入らないように丸まっているダンゴムシ。せっかくだからオレはこのGoでWASMを選ぶぜって感じなんですが、ぶっちゃけあれ、めんどくさいすよね。 あ、ちなみに今回の話は「このめんどくささをまるっと解決!」みたいな気持ちのいい話ではなくて、ただただ「めんどくさいよね」っていうだけの話です。あーめんどくさい。 Rustの場合 まず比較のためにRustの例をあ

                                                        GoのWASMがライブラリではなくアプリケーションであること - 株式会社カブク
                                                      • Vugu

                                                        Build a web front-end in Go that runs in your browser, today. Pure Go. Targets WebAssembly (and/or server). Modern browsers supported. Experimental, for now. Really cool. Vugu: A modern UI library for Go+WebAssembly Inspired by tools like Vue, React and Angular, Vugu is a library written in Go and able to run in modern browsers using WebAssembly. PLEASE NOTE: This is experimental technology! (read

                                                        • C#でテキストエディタエンジンをフルスクラッチで実装してWebAssemblyで動かした話 - Qiita

                                                          デモ 以下のリンクから試せます。 https://crash.jp/apps/crash-editor/ 未圧縮版(5MB) https://crash.jp/apps/crash-editor-br/ Brotli圧縮版(2.1MB) 環境によっては表示まで数秒かかります。二回目以降はキャッシュから読み込まれるので、表示に時間はかかりません。 キャッシュはブラウザの開発ツールから削除可能です。以下はChromeの場合。 開発ツール > Applicationタブ > Cache > Cache Storage ※デモを何度か上げなおしているので、エラーになる場合にはキャッシュを削除してみてください 動作環境 WebAssemblyに対応したブラウザが必要ですが、最近のブラウザであればまず問題ないです。 自分で確認した環境 Windows 10 Pro, Chrome/新Edge/Fire

                                                            C#でテキストエディタエンジンをフルスクラッチで実装してWebAssemblyで動かした話 - Qiita
                                                          • オープンソースプログラミング言語zigまとめ - Qiita

                                                            WebAssemblyのモジュール記述のためのプログラミング言語を調べていると、比較的新しいオープンソースのプログラミング言語zigがWebAssemblyモジュールを書くのに適している感じだったので、ソースコードを書いて動かしながら調べたことについて、コードに出ている順で並べています。 この文章中で用いているソースコードはmacOSやlinux上でビルド可能な状態で以下のURLにおいてあります: https://gist.github.com/bellbind/3c52ea6e506656701c9b7ff00a8599fa Qiitaは現時点でzigコードのシンタックスハイライトに未対応であり視認性がよくないですが、githubではzigコードでもシンタックスハイライトされます。 0. プログラミング言語zigについて オープンソースのプログラミング言語zigは、以下のURLで公開され

                                                              オープンソースプログラミング言語zigまとめ - Qiita
                                                            • AWS、エッジにおけるJavaScript実行環境に本格参入。Cloudflare WorkersやDeno Deployなどと競合へ

                                                              AWS、エッジにおけるJavaScript実行環境に本格参入。Cloudflare WorkersやDeno Deployなどと競合へ Amazon Web Services(AWS)は、エッジ環境で軽量なJavaScriptによる処理を実行可能な新サービス「Amazon CloudFront Functions」を発表しました。 AWSではすでにエッジで処理を行う「Lambda@Edge」を提供しており、そこでNode.jsとPythonによるコードを実行可能です。 しかしLambda@Edgeは13カ所のリージョナルエッジキャッシュにおいて処理が行われるのに対し、CloudFront Functionsは218カ所以上のCloudFront Edge Locationsにおいて処理が行われるため、よりユーザーに近い広範囲なロケーションで実行されます。 また、実行時間もLambda@Ed

                                                                AWS、エッジにおけるJavaScript実行環境に本格参入。Cloudflare WorkersやDeno Deployなどと競合へ
                                                              • Rust と WebAssembly で爆速な Markdown Editor を作ってみる

                                                                TypeScript でフロントエンドな皆さん、今日も型パズルしていますか? 型が好きなら Rust ですよね。ということで、いまいち使い所が思いつかない WebAssembly と Rust でなにか面白いことできないかな、と爆速(JS比2倍)の Markdown Editor を作ってみました(面倒な人は直接 GitHub みてください) この記事は iCARE Advent Calendar 2020 の 8日目の記事になります。昨日は アオキタカユキ さんの 【adobe XD】線型、円型のグラデーションを引く方法 という記事でした Webアプリケーションを作る まず、利用する側の Web アプリケーションを作成します どんな構成でもいいんですが、タイミング的にもちょうど良い Vue3 + TypeScript で環境を作りました $ npm install -g @vue/cli

                                                                  Rust と WebAssembly で爆速な Markdown Editor を作ってみる
                                                                • GitHub - yewstack/yew: Rust / Wasm framework for creating reliable and efficient web applications

                                                                  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 - yewstack/yew: Rust / Wasm framework for creating reliable and efficient web applications
                                                                  • Web フロントエンドエンジニアのための Rust 製 Web フロントフレームワーク Yew 入門

                                                                    Rust と呼ばれる言語はわりかし新しめの言語であり、2016–2021 年の間 Stack Overflow Developer Survey で「もっとも愛されているプログラミング言語」で一位を獲得し続けている人気の高い言語であります。 Rust の得意とする分野は OS やコンパイラなどのいわゆる低レイヤーの領域ですが、Web サーバー、機械学習、コマンドラインアプリケーションなどさまざまな用途で利用されます。 Web フロントエンドの領域では高速化を目的として Rust から WebAssembly(以下、WASM)を生成して JavaScript から実行する用途がよく知られています。その他にも SWC と呼ばれる Rust ベースで作成されているビルドツールが高速に動作することで注目を集めています。(実際に jestの実行 に試してみたところ実行時間が 3 倍ほどになって驚いて

                                                                      Web フロントエンドエンジニアのための Rust 製 Web フロントフレームワーク Yew 入門
                                                                    • 2022年に注目したいCloudNative関連技術 | gihyo.jp

                                                                      あけましておめでとうございます。サイバーエージェントの青山真也(@amsy810)です。今年の新春企画では、2022年にも動向を見ていきたいと思っている、2021年のCloudNative関連のトピックを紹介します。項目としてはeBPF、WebAssembly(Wasm⁠)⁠、複数Kubernetesクラスタの管理・連携、CNCF Technical Advisory Groups(TAGs)によるWhitepaperを取り上げていきます。 eBPF eBPFは、カーネルのソースコードの変更なしに任意のプログラムをカーネルに組み込み、カーネル空間で任意の処理を実行するための仕組みです。CNCFのプロジェクトでは、Cilium・Calico・Falco・Pixieなどで利用されています。 CloudNative領域でのeBPFは、ネットワーク関連での利用が一番活発です。eBPFを利用したCN

                                                                        2022年に注目したいCloudNative関連技術 | gihyo.jp
                                                                      • Webブラウザ上にNode.jsを実装、Webブラウザ上のサーバサイドでNext.jsやVite、Astroなどが実行可能な「Sandpack 2.0」が登場

                                                                        Webブラウザ上にNode.jsを実装、Webブラウザ上のサーバサイドでNext.jsやVite、Astroなどが実行可能な「Sandpack 2.0」が登場 クラウド上でマイクロVMベースのオンライン開発環境などを提供するCodeSandboxは、Webブラウザ上で抽象化したNode.jsを実装しWebブラウザ上にJavaScriptのサーバサイド環境を作り出すことで、WebブラウザだけでNext.jsやAstroなどを実行可能にする新しいソフトウェア「Sandpack 2.0」を発表しました。 WindowsやMacなどのデスクトップPC用のWebブラウザだけでなく、iOS上のSafariでもNode.jsが実行可能。ただし現時点でのiOS版Safariへの対応は、メモリリークなどが発生するためβ版だと説明されています。 先週、StackBlitzからはWebブラウザ上で実行できるWe

                                                                          Webブラウザ上にNode.jsを実装、Webブラウザ上のサーバサイドでNext.jsやVite、Astroなどが実行可能な「Sandpack 2.0」が登場
                                                                        • サーバサイドの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サーバ
                                                                          • WebAssemblyの基礎から最新動向まで、@chikoskiに聞いてきた!

                                                                            WebAssemblyの基礎から最新動向まで、@chikoskiに聞いてきた! 白石 俊平(HTML5 Experts.jp編集長) こんにちは、編集長の白石です。 この記事は、9月24日に開催されたHTML5 Conference 2017に登壇したエキスパートに、お話されたセッションのトピックを中心に、様々なお話を伺おうというものです。セッションの内容をより深く理解する手助けになるだけでなく、本記事単体でも面白く読んでいただけることを目指しています。 今回お話を伺ったのは、WebAssemblyコミュニティを率いてらっしゃる清水 智公さん(@chikoski)です。清水さんのセッションは「WebAssembly MVPまとめと、今の議論の内容からいくつか」でした。 ※スライド資料はこちらで公開されています。 WebAssemblyとは何か? 白石: 今日はよろしくお願いします。まずは自

                                                                              WebAssemblyの基礎から最新動向まで、@chikoskiに聞いてきた!
                                                                            • Rust・WebAssembly・WebGLで作る回路シミュレータ CADに書いたCPUの回路図がそのまま動く

                                                                              Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。KOBA789氏は、シミュレータとCADの制作について発表しました。全2回。後半は、回路CADの制作方法について。前半はこちら。 自作CADに求めること KOBA789氏(以下、KOBA789):シミュレータができたので、次はCADを作っていきます。書いた回路図がそのまま動くCADがなかなかないので、私はCADに書いた回路図がそのまま動くことを一番求めていました。 大抵の場合、回路を書くCADとシミュレータが別々になっています。まじめな回路を組むのであればそのほうが楽なのですが、だいたいタイミングチャートのかたちで表示されるんですよね。 プローブをいろいろなところにくっつけて、そのプローブの値が時間経過でどうなったかというタイミングチャートがバーッと出るわけです。たく

                                                                                Rust・WebAssembly・WebGLで作る回路シミュレータ CADに書いたCPUの回路図がそのまま動く
                                                                              • Service WorkerとWasmを組み合わせてサーバー処理をブラウザーでリアルに再現する

                                                                                今回の話はWasmというよりもService Workerの話がメインになりますが、WasmとService Workerを組み合わせることで、ブラウザー上でサーバー処理をリアルに再現することができるので、このタイトルにしています。 まずは動画をご覧ください。 見ていただくと分かるように、ブラウザー上でPHPのコードを書くとその実行結果が右側に表示されています。 特に面白い点が、お問い合わせフォームのPOST後の処理までもブラウザー上だけで実行できているという点です。 これはWasmとService Workerを組み合わせて実現しています。 大体以下のようなプロセスで実現しています。 Wasmはブラウザー側でも実行可能ですが、あえてService Worker上で実行しているのは、URLへのリクエストに対してそのリクエストにインターセプト(介入)することで、POST後の処理などもブラウザ

                                                                                  Service WorkerとWasmを組み合わせてサーバー処理をブラウザーでリアルに再現する
                                                                                • https://ffmpegwasm.github.io/