A few weeks ago, we launched Dagger Cloud v3, a completely new user interface for Dagger Cloud. One of the main differences between v3 and its v2 predecessor is that the new UI is written in WebAssembly (WASM) using Go. At first glance, this might seem an odd choice - Go typically isn't the first language you think of when deciding to program a Web UI - but we had good reasons. In this blog post,
WebAssemblyã¬ãã¼ã¸ã³ã¬ã¯ã·ã§ã³æ©è½ãWebæ¨æºã®ãBaselineãã«ãSafari 18.2ã§ã®ãµãã¼ãéå§ã§ ããã«ããå¤ãã®Webãããããã¼ãå®å¿ãã¦WasmGCã®æ©è½ãå©ç¨ã§ãããã¨ã«ãªãã¾ãã WasmGCã¨ã¯ Webãã©ã¦ã¶ä¸ã§é«éã«å®è¡ã§ãããã¤ããªãã©ã¼ãããã¨ãã¦ç»å ´ããWebAssemblyã¯ããã¨ãã¨ã¬ãã¼ã¸ã³ã¬ã¯ã·ã§ã³æ©è½ãããã¾ããã§ããã ãã®ããã«WebAssemblyã¢ããªã±ã¼ã·ã§ã³ãéçºããããã°ã©ãã¯ãããã°ã©ãèªèº«ã確ä¿ããã¡ã¢ãªã®è§£æ¾ã«è²¬ä»»ãæã¤å¿ è¦ãããã¾ãããããã確ä¿ããã¾ã¾è§£æ¾ãå¿ããã¡ã¢ãªãããã¨ãã©ãã©ãããã°ã©ã ã確ä¿ããã¡ã¢ãªãå¢å¤§ãã¦ãããæçµçã«ã¯ã¡ã¢ãªä¸è¶³ãªã©ã®ã¨ã©ã¼ãå¼ãèµ·ãããã¨ã«ãªãããã§ãã WasmGCã¯ããã®WebAssemblyã«ã¬ãã¼ã¸ã³ã¬ã¯ã·ã§ã³æ©è½ãæãããæ©è½ã§ããã¢ããªã±ã¼ã·ã§ã³ã«ãã£ã¦å²ã
é«éå¤æ©è½ãªã¿ã¼ããã«ã¨ãã¥ã¬ã¼ã¿ãGhostty 1.0ãæ£å¼ãªãªã¼ã¹ããããã§ã«ã»ãã·ã¢ãæ°ãéçºãä»å¾ã¯WebAssemblyåã«ãã対å¿ãã©ãããã©ã¼ã æ¡å¤§ã HashiCorpã®åµæ¥è ã®ä¸äººã§ãããããã§ã«ã»ãã·ã¢ãæ°ã¯ãå人ã®ããã¸ã§ã¯ãã¨ãã¦éçºãã¦ããã¿ã¼ããã«ã¨ãã¥ã¬ã¼ã¿ãGhosttyãã®æ£å¼ãªãªã¼ã¹ã¨ãªããã¼ã¸ã§ã³1.0ãå ¬éãã¾ããï¼æ¬è¨äºå ¬éæç¹ã§ãã¼ã¸ã§ã³1.0.1ãææ°ãã¼ã¸ã§ã³ï¼ã åããã¦ãªã¼ãã³ã½ã¼ã¹ã¨ãã¦GitHubã§ã½ã¼ã¹ã³ã¼ããå ¬éããã¾ããã https://t.co/39Xj39wheA pic.twitter.com/PH0qejFB4z â Mitchell Hashimoto (@mitchellh) December 26, 2024 ãã·ã¢ãæ°ã¯2023å¹´12æã«HashiCorpãéè·ãã¦ãã¾ããã以åããå人ã®ããã¸ã§ã¯ãã¨ãã¦ã¿
FirefoxãWebAssemblyã®ã³ã³ãã¤ã«å¦çã75åéã«ãSpiderMonkeyã®JITã³ã³ãã¤ã©æ¹å㧠Firefoxã®JavaScriptã¨ã³ã¸ã³ã§ããWebAssemblyã®å®è¡ã¨ã³ã¸ã³ã§ããããSpiderMonkeyãã®éçºãã¼ã ã¯ãWebAssemblyã®ã³ã³ãã¤ã«å¦çãå¾æ¥ãããæ大ã§75åé«éã«ããæ¹åãè¡ã£ããã¨ããããã°ã75x faster: optimizing the Ion compiler backend | SpiderMonkey JavaScript/WebAssembly Engineãã§æããã«ãã¾ããã äºæ®µç®ã®ã³ã³ãã¤ã©ãã¡ã¢ãªã使ãããã¦ãã ãã®æ§è½æ¹åã®ãã£ããã¯ããã¤ã¯ãã½ããããªã¼ãã³ã½ã¼ã¹ã§å ¬éãã¦ããæ©æ¢°å¦ç¿ã©ã¤ãã©ãªãONNX Runtimeãã®WebAssemblyçãSpiderMonekyã§å®è¡ããéã«ãæé©åã®
WebAssemblyã©ã³ã¿ã¤ã ãWasmerããiOSããµãã¼ããiOSä¸ã§WebAssemblyãå®è¡ããWasmer 5.0ãæ£å¼çãªãªã¼ã¹ ç±³Wasmer社ã¯ã¹ã¿ã³ãã¢ãã³ãªWebAssemblyã©ã³ã¿ã¤ã ãWasmer 5.0ãã®æ£å¼ãªãªã¼ã¹ãçºè¡¨ãã¾ããã Wasmer 5.0ã§ã¯ãiOSã®ãµãã¼ããWebAssemblyã©ã³ã¿ã¤ã ã®ããã¯ã¨ã³ããV8ãWAMRãªã©ã«å¤æ´å¯è½ã«ãªããªã©ã®æ°æ©è½ãå ããã¾ããã Introducing Wasmer 5.0. Experimental V8, Wasmi and WAMR backends iOS support Enhanced Performance Upgraded LLVM and Cranelifthttps://t.co/wpwcmMT0tg â Wasmer (@wasmerio) October 29, 2024
Leaning Technologiesã¯ãWebãã©ã¦ã¶ä¸ã§x86ãã¤ããªããã®ã¾ã¾å®è¡ã§ããWebAsesmbly製ã®ä»®æ³ãã·ã³ãWebVMãããã¼ã¸ã§ã³ã¢ãããããWebVM 2.0ããå ¬éãã¾ããã å¾æ¥ã®WebVM 1.0ã§ã¯ãWebãã©ã¦ã¶ä¸ã®ä»®æ³ãã·ã³ã§x86çã®Linuxãèµ·åããã³ãã³ãã©ã¤ã³ãããã¾ãã¾ãªæä½ãå¯è½ã§ããã åèï¼WebAssembly製ã®x86ä»®æ³ãã·ã³ãWebVMããç»å ´ãWebãã©ã¦ã¶ä¸ã§Linuxãå種ã³ãã³ããã¢ããªããã®ã¾ã¾å®è¡å¯è½ ä»åå ¬éãããWebVM 2.0ã§ã¯ãGUIãåããLinuxãã¹ã¯ãããç°å¢ã¾ã§Webãã©ã¦ã¶ä¸ã§ãµãã¼ãããããã¨ãæ大ã®ç¹å¾´ã§ãã ä¸å³ã§ç¤ºãããããã«ãä»®æ³ãã·ã³ä¸ã§ãã¾ãã¾ãªããã»ã¹ãå®è¡ããããã«Linuxã·ã¹ãã ã³ã¼ã«çµç±ã§GUIã®ãã£ã¹ãã¬ã¤ããã¼ã«ã«ãã£ã¹ã¯ããããã¯ã¼ãã³ã°ããµãã¼ããã¦ãã¾ã
11æ15æ¥ãLeaning TechnologiesããWebVM 2.0: ãã©ã¦ã¶ä¸ã§ç¨¼åããå®å ¨ãªLinuxãã¹ã¯ãããç°å¢ãã¨é¡ããè¨äºãå ¬éããããã®è¨äºã§ã¯ããã©ã¦ã¶å ã§å®è¡å¯è½ãªLinuxãã¹ã¯ãããç°å¢ãWebVM 2.0ãã®æ©è½ã¨ãã®æè¡çãªä»çµã¿ã«ã¤ãã¦è©³ããç´¹ä»ããã¦ããã WebVMã¨ã¯ WebVMã¯ããã©ã¦ã¶å ã§ã¯ã©ã¤ã¢ã³ããµã¤ãã§å®è¡ãããå®å ¨ãªLinuxç°å¢ã§ãããæ°¸ç¶çãªãã¼ã¿ã¹ãã¬ã¼ã¸ããããã¯ã¼ãã³ã°ãXorgããã³ãã¹ã¯ãããç°å¢ããµãã¼ãããä»®æ³ãã·ã³ã§ãããWebAssemblyãå©ç¨ããç¾ä»£ã®ã»ã¼ãã¹ã¦ã®ãã©ã¦ã¶ã§åä½ãããããã¢ãã¤ã«ãã©ã¦ã¶ã«ã対å¿ãã¦ãããLeaning Technologiesã«ãã£ã¦éçºãããx86ä»®æ³åã¨ã³ã¸ã³ãCheerpXããåºç¤ã«ãã¦ããã WebVM 2.0ã®æ°æ©è½ æ°ãã«ãªãªã¼ã¹ãããWebVM 2.0ã§ã¯
ã¹ã¿ã³ãã¢ãã³ãªWebAssemblyã©ã³ã¿ã¤ã ãWasmerãã®éçºå ã§ããWasmer社ã¯ææ°ã®Wasmer 4.4ã®æ°æ©è½ã¨ãã¦ãCè¨èªãWebAssemblyã«ã³ã³ãã¤ã«ããWebAssemblyç°å¢ã§ãã®ã¾ã¾å®è¡å¯è½ããæ©è½ãçºè¡¨ãã¾ããã ä¸è¨ã¯Wasmer社ãç¨æãããWebãã©ã¦ã¶ä¸ã«WebAssemblyã§Bashç°å¢ãæ§ç¯ãããwasmer.shãã®ã³ãã³ãã©ã¤ã³ãããwasmerã«ããCè¨èªãã³ã³ãã¤ã«ãã¦WebAssemblyã¢ã¸ã¥ã¼ã«ãçæããå®è¡ããæä½ãçè ã®Windowsãã·ã³ã§å®éã«è©¦ããã¨ããã§ãï¼èµ¤ç·ã¯çè ã«ããï¼ã Webãã©ã¦ã¶ä¸ã§Cè¨èªãWebAssemblyã«ã³ã³ãã¤ã«ãããã®ã¾ã¾WebAssemblyç°å¢ä¸ã§å®è¡ã§ãã¦ãã¾ãã åããã¦ç»å ´ããJavaScript SDKã«ãã£ã¦Node.jsãBunãªã©ã®ãµã¼ããµã¤ãã®WebAssembly
æµ®åå°æ°ç¹æ°ã«ã¯IEEE 754ã¨ããæ¨æºè¦æ ¼ãããã¾ãããè¦æ ¼ã®ç¯å²å ã§ãã£ã¦ãå ãã«å®è£ ã«ããå·®ç°ãèªãããã¦ãã¾ãããã®ä¸ã¤ãNaNã®ããããã¿ã¼ã³ã§ãã WebAssemblyã¯NaNã®ããããã¿ã¼ã³ã«é¢ãã¦ã¯å®è£ ä¾åã®çµæã許容ãã¦ãããWasmã©ã³ã¿ã¤ã ã¯ç¹ã«æ·±ãçç±ããªããã°ãã¹ãCPUã®æµ®åå°æ°ç¹å½ä»¤ããã®ã¾ã¾ç¨ããã¨èãããããããçµæã¨ãã¦ãWasmããNaNã®ããããã¿ã¼ã³ã観測ãããã¨ã§ãã¹ãã®CPUã®å½ä»¤ã»ãããæ¨æ¸¬ããããã¨ãã§ãã¾ãã ããã§ã¯ããx86(_64)ããRISC-Vãããã®ä»ï¼Armãªã©ï¼ãã®3æã§å¤å®ãããã¨ãç®æãã¾ãã å¤å®ã³ã¼ã å¤å®ããã³ã¼ãã¯ä»¥ä¸ã§ãï¼ #include <inttypes.h> #include <stdio.h> #include <string.h> float u32_to_f32(uint32_t x) {
Rust and WebAssemblyã§SPAãä½ã£ã¦ã¿ããï¼Webã¢ããªå®è£ ã§å¦ã¶ãç¾å ´ã§å½¹ç«ã¤Rustå ¥éï¼12ï¼ ç¬¬12åããã¯ã第11åã¾ã§ã§ä½æããæ稿ã¢ããªã®å»¶é·ã¨ãã¦ãRust and WebAssemblyã§TODOã¢ããªãéçºãã¾ãã第12åã§ã¯ãããã¸ã§ã¯ãã®æ§ç¯ããã¾ãã¾ãªæºåã®ããã®ã³ã¼ããéãã¦ãRust and WebAssemblyã®åºæ¬çãªå©ç¨æ¹æ³ãç解ãã¾ãã
ãPorfforãã¯ãJavaScript/TypeScriptãWebAssemblyãã¤ããªããã¤ãã£ããã¤ããªã¸ã¨ã³ã³ãã¤ã«ããå®é¨çãªãã¼ã«ã§ãããããã¾ã§ã«ãªã2ã¤ã®ç¹å¾´ãåãã¦ãã¾ãã 1ã¤ç®ã¯JavaScript/TypeScriptãã³ã³ãã¤ã«ãã¦WebAssemblyãã¤ããªããã¤ãã£ããã¤ããªãçæãããã¨ãã¦ããç¹ã§ãã ããã¾ã§ãJavaScript/TypeScriptãWebAssemblyã«å¤æãããã¼ã«ã¯åå¨ãã¦ãã¾ããããJavaScriptã®ã³ã¼ãã¨WebAssemblyçã®JavaScriptã¨ã³ã¸ã³ã1ã¤ã«ããã±ã¼ã¸ã³ã°ããã¨ããæ段ã§å®ç¾ãã¦ãã¾ããã å®è¡æã«ã¯ãããã±ã¼ã¸å é¨ã®JavaScriptã³ã¼ããWebAssemblyçJavaScriptã¨ã³ã¸ã³ã§å®è¡ãã¦ããã®ã§ãããã®ããçæããããã¤ããªã®å¤§ããã¯æ¯è¼ç大ãããã¾ãå®è¡é度ã¯ãã
ã¯ããã« PGliteã®æ¦è¦ PGliteã®ç¹å¾´ PGliteã試ã ãã©ã¦ã¶ã§ä½¿ã PGliteã®é度è¨æ¸¬ ã¾ã¨ã ã¯ããã« ããã«ã¡ã¯ï¼ã¨ã³ã¸ãã¢ï¼å¹´ç®ã®TKDSã§ãï¼ ä»åã¯PGliteã«ã¤ãã¦èª¿ã¹ã¦ã¿ã¾ããï¼ æ¦è¦ã»ä½¿ãæ¹ã»é度å®é¨ã»ã¾ã¨ãã®å 容ã§è¨äºã¯æ§æããã¦ãã¾ãã 使ã£ã¦ã¿ãçµæã¨ãã¦ã軽éé«éã§ããè²ã 使ãã¿ã¡ããããããªãã¼ã«ã ã¨æãã¾ããã ãã²æå¾ã¾ã§èªãã§ããã ããã¨å¹¸ãã§ãã PGliteã®æ¦è¦ PGliteã¯ãPostgreSQLãWebAssemblyï¼WASMï¼ã«ã³ã³ãã¤ã«ãã軽éãªãã¼ã¿ãã¼ã¹ã¨ã³ã¸ã³ã§ãã ããã«ããããã©ã¦ã¶ãNode.jsãBunãDenoãªã©ã§PostgreSQLã®æ©è½ãå©ç¨ã§ããéçºè ã¯ãã¼ã«ã«ããµã¼ãã¼ã¬ã¹ç°å¢ã§ãã¼ã¿ãã¼ã¹æä½ãè¡ããã¨ãå¯è½ã§ãã PGliteã¯ãã¤ã³ã¡ã¢ãªãã¼ã¿ãã¼ã¹ããã¡ã¤ã«ã·ã¹ãã ï¼Node.jsãB
å·ç å±±å ç´ æéä¼ç¤¾ WINGSããã¸ã§ã¯ããéå¶ããããã¯ãã«ã«å·çã³ãã¥ããã£ï¼ä»£è¡¨ å±±ç°ç¥¥å¯ï¼ã«æå±ãããã¯ãã«ã«ã©ã¤ã¿ã¼ãåºç社ãçµã¦ããªã¼ã©ã³ã¹ã¨ãã¦ç¬ç«ãã©ã¤ã¿ã¼ãã¨ãã£ã¿ã¼ããããããã¼ãè¬å¸«æ¥ã«å¾äºãå±å·ã¯ããã¾ãã¸ãããèæ¸ã«ãBootstrap 5 ããã³ãã¨ã³ãéçºã®æç§æ¸ãããä½ã£ã¦å¦ã¹ãHTMLï¼JavaScriptã®åºæ¬ããªã©ã ç£ä¿® å±±ç° ç¥¥å¯ é岡çæ¦åçºçã¾ããä¸æ©å¤§å¦çµæ¸å¦é¨åæ¥å¾ãNECã«ã¦ã·ã¹ãã ä¼ç»æ¥åã«æºãããã2003å¹´4æã«å¿µé¡ããªã£ã¦ããªã¼ã©ã¤ã¿ã¼ã«è»¢èº«ãMicrosoft MVP for Visual Studio and Development Technologiesãå·çã³ãã¥ããã£ãWINGSããã¸ã§ã¯ãã代表ã 主ãªèæ¸ã«ãç¬ç¿ãã·ãªã¼ãºããããããã¯ãããReactå®è·µå ¥éãããæ¹è¨3ç JavaScriptæ¬æ ¼å ¥éãä»ã
æ¬è¨äºã¯ãTechFeed Experts Night#29 ã HTTP3/QUICâ¦Webãããã³ã«æåç·ã®ã»ãã·ã§ã³æ¸ãèµ·ããè¨äºã«ãªãã¾ãã ã¤ãã³ããã¼ã¸ã®ã¿ã¤ã ãã¼ãã«ããããã®ä»ã®ã»ãã·ã§ã³ã«é¢ããè¨äºããèªã¿é ãã¾ãã®ã§ãä¸åº¦ã¢ã¯ã»ã¹ãã¦ã¿ã¦ãã ããã æ¬ã»ãã·ã§ã³ã®ç»å£è ã»ãã·ã§ã³åç» ï¼ flano_yukiã¨è¨ãã¾ããæ®æ®µã¯Xã®ãã®ã¢ã«ã¦ã³ãã§HTTPé¢é£ã®æ å ±çºä¿¡ããã¦ãã¾ãããã®é åã«10å¹´ãããåã«èå³ãæã£ã¦åãçµãã§ãã¦ãã¦ã§ããHTTPãé²åãç¶ãã¦ããããããããæãã¦è¿½ãç¶ãã¦ãã¾ããä»åãHTTPãã¾ã ã¾ã é²åãã¦ããã¨ãããã¨ããHTTPãã®ãã®ã®è©±ã¨ãã¦çæ§ã«ãç´¹ä»ã§ããã°ã¨æãã¾ãã HTTPã®ã»ãã³ãã£ã¯ã¹ã¨ãããããCookieãªã©ã®ä»æ§ååããç´¹ä»ãã¾ããä»åã¯è°è«ä¸ã®å 容ãå«ãã§ãããã¨ã¨ãHTTPã®ä»æ§ä¸ã®è©±ã§ããã©ã¦ã¶ãã¯ã©ã¦ãã®å´
æ¬è¨äºã¯ãTechFeed Experts Night#29 ã HTTP3/QUICâ¦Webãããã³ã«æåç·ã®ã»ãã·ã§ã³æ¸ãèµ·ããè¨äºã«ãªãã¾ãã ã¤ãã³ããã¼ã¸ã®ã¿ã¤ã ãã¼ãã«ããããã®ä»ã®ã»ãã·ã§ã³ã«é¢ããè¨äºããèªã¿é ãã¾ãã®ã§ãä¸åº¦ã¢ã¯ã»ã¹ãã¦ã¿ã¦ãã ããã æ¬ã»ãã·ã§ã³ã®ç»å£è ã»ãã·ã§ã³åç» åã®æ¹ããã¯ãMedia Over QUIC ææ°äºæ ãã¨ãã話ããããã¨æãã¾ããMedia Over QUICã¯æ åéä¿¡åãQUICã®è¦æ ¼ã§ãIETFããåºã¦1å¹´ã¡ãã£ã¨ãããã§ããèªå·±ç´¹ä»ã¯å²æãã¾ãã ä»æ¥ã®æ¦è¦ã§ãããMedia Over QUICï¼MoQï¼ã«ã¤ãã¦ãå¾æ¥ã®æ åéä¿¡ã§ããHLSãWebRTCã¨ä½ãéãã®ãã¨ãã話ã¨ãæ¨æºåã®ææ°ååã®è©±ããã¾ãã æ¢åæ¹å¼ã®çæãåããMedia Over QUIC ã¾ããMedia Over QUICã¨ã¯ä½ãã¨ãã話ã§ãããW
æ¬è¨äºã¯ãTechFeed Experts Night#29 ã HTTP3/QUICâ¦Webãããã³ã«æåç·ã®ã»ãã·ã§ã³æ¸ãèµ·ããè¨äºã«ãªãã¾ãã ã¤ãã³ããã¼ã¸ã®ã¿ã¤ã ãã¼ãã«ããããã®ä»ã®ã»ãã·ã§ã³ã«é¢ããè¨äºããèªã¿é ãã¾ãã®ã§ãä¸åº¦ã¢ã¯ã»ã¹ãã¦ã¿ã¦ãã ããã æ¬ã»ãã·ã§ã³ã®ç»å£è ã»ãã·ã§ã³åç» å¥¥ä¸ç©ã¨ç³ãã¾ããä»æ¥ã¯ãããããã®HTTPï½æ¡å¤§ããã»ãã³ãã£ã¯ã¹ã¨é«éåãã¨é¡ãã¦è©±ãããã¦ããã ãã¾ãã ç§ã¯Fastlyã¨ããCDNã®ä¼ç¤¾ã§ãã·ãã¢ããªã³ã·ãã«OSSã¨ã³ã¸ãã¢ã¨ããä»äºããã£ã¦ãã¾ããå ·ä½çã«ã¯ãFastlyã§ä½¿ããã¦ããHTTPã®ã¿ã¼ããã¼ã¿ã¼ãµã¼ãã¼å®è£ ã§ããH2Oã®éçºã¨ããã®ä¸ã§ä½¿ããã¦ããTLSãQUICã®ã¹ã¿ãã¯ã®ã¡ã³ããã¼ããã£ã¦ãã¾ãããã®ä»ãæ¨æºåé¢é£ã§ã¯ããã¤ãã®RFCããã©ããã§èè ãå ±èè ãåãã¦ãã¾ãã
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}