fosstodon.org is one of the many independent Mastodon servers you can use to participate in the fediverse.
Fosstodon is an invite only Mastodon instance that is open to those who are interested in technology; particularly free & open source software. If you wish to join, contact us for an invite.

Administered by:

Server stats:

8.6K
active users

#webassembly

8 posts8 participants1 post today

The first non-BASIC programming language I learned was Karel the Robot. It’s a pseudo-Algol-derived teaching language. We had a Honeywell mainframe (this high school didn’t get their supercomputer until after I left for Japan) to build and run our programs.

Today I learned there’s a WebAssembly-based version and IDE that runs in the browser. Made me smile.

#karel #structuredprogramming
#webassembly

Karel: en.wikipedia.org/wiki/Karel_(p

Project: github.com/giper45/KarelWebAss

Demo: karel-webassembly.netlify.app/

en.wikipedia.orgKarel (programming language) - Wikipedia

🌘 在迷宮中運用 Candle 和 WASM 進行反向傳播
➤ 瀏覽器內的智慧導航:Candle 與 WASM 驅動的無神經網路最佳化
yberreby.com/discrete-maze-bac
這篇文章介紹了一種創新的方法,利用 Candle 和 WebAssembly (WASM) 在瀏覽器中直接透過梯度下降最佳化,解決離散迷宮導航問題。作者將離散問題轉化為一個可微分的隨機模型,並直接優化動作的 logits,無需神經網路或傳統的強化學習演算法。這種方法利用了 Candle 的自動微分功能,並將運算完全移至客戶端,即使離線也能執行。文章詳細闡述了狀態表示、動作空間、轉移動力學、參數化以及學習目標,展現了端對端可微分的迷宮解決方案。
+ 太酷了!居然可以在瀏覽器裡直接跑這麼複雜的優化,而且不需要後端伺服器,這對 Web AI 應用前景無限。
+ 參數化方式有點反直覺,但結果確實有效。作者提到「不推薦在嚴謹的場景中使用」,這點很有意思,想了解其限制。
#人工智慧 #機器學習 #最佳化 #WebAssembly

yberreby.comBackpropagating through a maze with candle and WASM - @yberreby

HTML is Dead, Long Live HTML — Acko.net

Link
HTML 是死的,htmL 萬歲:從根本重新思考 DOM
https://example.com/article-html-is-dead-long-live-html

📌 Summary:
本文深入剖析現行網頁瀏覽器核心的 Document Object Model(DOM)及其關聯技術,包括 HTML、CSS 與 SVG,指出它們架構老舊、繁複且難以維護的根本問題。DOM 的設計承襲自 SGML/XML,結構冗長且「字串式型別(stringly typed)」限制明顯,導致開發者多半避免直接操作 DOM。HTML 長期停滯不前,語義化標籤不足,瀏覽器廠商主導的 WHATWG 也未能提供明確的前瞻方向。CSS 則在結構概念上存在根本性的「由外而內」及「由內而外」兩種排版模式混雜,雖有 Flexbox 與 Grid 等進步,但依然複雜且帶來層疊深度問題。SVG 功能強大但語法與 CSS 不一致,且二者互補不足。文中還批判「HTML in Canvas」等新興提案僅是將現有問題包裹於新框架,未能根本解決困境。作者認為未來應捨棄 DOM 陳腐的設計重構全新數據模型,並借鑑現代 GPU 渲染技術,打造更直觀且效能優良的新 UI 架構。此外,也探討了瀏覽器內核多程序分離和安全性需求,強調當前標準技術需全面升級以應對未來網路應用發展。

🎯 Key Points:
★ DOM 架構問題
→ Chrome 中 document.body 擁有超過 350 個屬性,再加上約 660 個 CSS 屬性,介面混亂且功能重疊。
→ DOM 繼承於 SGML/XML,資料型別以字串為主,無法高效管理元件狀態。
→ Web Components 雖嘗試原生元件化但不受歡迎且 API 複雜。
→ HTML 進展停滯,缺乏語義化擴充與標準,使得語意混淆與標記混亂。

★ CSS 的內外排版悖論
→ CSS 的佈局由「外而內」(外層尺寸決定內部)與「內而外」(內容決定容器尺寸)互相矛盾,導致高度與寬度處理複雜。
→ Flexbox、Grid 等新技術改進體驗但帶來計算量與遞歸問題。
→ CSS 同時承載兩套系統:文字屬性繼承與容器佈局,兩者語意混合。
→ 其他技術如 position: sticky、z-index 存在設計缺陷及調試困難。

★ SVG 與 Canvas 的角色與限制
→ SVG 與 CSS 有重疊功能卻不存在上下位關係,SVG 支援多邊形命中測試卻複雜且效率有限。
→ HTML in Canvas 嘗試將 DOM 元素繪製至 <canvas>,但仍需完整 DOM 樹支持,無法突破基礎架構限制。
→ 以 Canvas 重做 UI 雖具自由度,卻需從零實作文字排版、交互等,開發門檻極高。
→ 作者建議應突破既有 DOM 與標準,設計新型態的視圖與渲染樹架構,利用 GPU 能力提升 UI 表現及靈活度,類似 Use.GPU 項目。
→ 重構瀏覽器內核可同時解決多線程、安全隔離與異步控制等現代需求。

🔖 Keywords:
#DOM #HTML6 #CSS_Flexbox #SVG #Canvas_UI #瀏覽器內核 #GPU_渲染 #WebAssembly #WebComponents #UseGPU
Acko.netHTML is Dead, Long Live HTMLRethinking DOM from first principles
Continued thread

yeah, yeah, AI this AI that... but **some of it** is very useful. But you want to build your #MCP servers with fixed and immutable tooling -- and you want those tools to be discoverable on the fly, with capability controls as well.

Yeah, it's #webassembly components, but it does the right thing.

Thinking back on the vim.wasm project that practically stalled over 7 years ago. 🤔 It had potential to bring Vim to the web, but it never really took off. Was it the timing, a lack of community support, or something else? Your thoughts! #Vim #WebAssembly

🌘 PHP-ORT:為網頁提供機器學習推論功能
➤ 賦能 PHP 開發者,迎向 AI 驅動的網頁時代
krakjoe.github.io/ort/
本文介紹了 PHP-ORT,一個為 PHP 開發者帶來的首屈一指的機器學習推論解決方案。鑑於 PHP 在網頁開發中的主導地位,PHP-ORT 旨在使數百萬 PHP 開發者能夠在他們熟悉的環境中輕鬆地將智能功能整合到網站應用程式中,無需遷移至其他技術堆疊。它透過底層的 Tensor API、高效的數學函式庫及 ONNX 整合,實現了高效能的機器學習推論,並透過 WebAssembly 在瀏覽器中展示了其潛力。PHP-ORT 的目標是為 PHP 語言在 AI 時代中開闢新的可能性,使其成為生產環境中機器學習推論的關鍵基礎設施。
+ 聽起來太棒了!終於不用再依賴外部服務就能在 PHP 中實現 ML 了,這將大大簡化我們的開發流程。
+ 雖然 PHP 的生態系確實還有待加強,但 PHP-ORT 的出現絕對是一個令人振奮的開始。期待看到它如何推動
#機器學習 #PHP #網頁開發 #推論 #ONNX #WebAssembly

krakjoe.github.ioPHP-ORT: Machine Learning Inference for the Web

🌘 讓 libcurl 在 WebAssembly 中運作
➤ 繞過 WebAssembly 網路限制,讓 libcurl 暢行無阻
jeroen.github.io/notes/webasse
本文詳細說明如何透過 WebSocket 代理伺服器,讓依賴 libcurl 的應用程式在 WebAssembly 環境中無需修改即可運作。由於 WebAssembly 本身缺乏直接的 TCP 連線能力,作者提出一種巧妙的解決方案:利用 Emscripten 的 WebSocket 封裝機制,將 TCP 流量導向至一個 WebSocket 代理,該代理再將流量轉發給 SOCKS5 代理,進而允許 libcurl 連線到外部網路服務。文章也探討了 WSS 的使用、生產環境的設定,並提供實際的 R 語言範例來展示此技術的應用。
+ 這方法聽起來很有趣,解決了 WebAssembly 網頁應用程式在網路存取上的主要瓶頸!
+ 感謝作者分享這麼詳盡的技術細節,特別是
#WebAssembly #libcurl #網路代理 #WebSocket #SOCKS5

ʕ•ᴥ•ʔ Notes from Jeroen · Making libcurl work in webassemblyWe explain how to make libcurl based applications work in webassembly without changes by tunneling all traffic over a websocket proxy.