作者kuninaka ()
看板C_Chat
標題[閒聊] DOOM 成功跑在 Typescript 的 Types
時間Sat Mar 1 20:17:58 2025
解說影片:
https://youtu.be/0mCsluv5FXA
GitHub Repo:
https://github.com/MichiganTypeScript/typescript-types-only-wasm-runtime
他為了要證明這是不可能的,然後去實作看看
結果證明可以!?
在此過程中,他在類型系統中實現了一個完整的 WASM 虛擬機,包括實現 DOOM 所需的
116 條 WebAssembly 指令,從整數運算開始,並結合內存管理、動態調度等,所有這些
都在以字符串文字存儲的二進制補碼數上運行。
最終結果是 177TB 的數據,代表 3.5 兆行類型定義。以每秒 2000 萬個類型實例的速度
渲染《DOOM》的第一幀耗時 12 天。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.173.185.206 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1740831481.A.F21.html
推 gino0717: 所有可以用javascript寫出來的東西 最後都會javascript 03/01 20:20
→ gino0717: 寫出來 03/01 20:20
推 orooro: 任何系統只要被發現是圖靈完備下一步就是跑DOOM了是吧 03/01 20:39
→ kuninaka: wwwww 03/01 20:41
→ spfy: 你這個還真不好懂== 03/01 20:53
→ kuninaka: 沒寫過typescript我也不太懂,反正大概是 03/01 20:55
→ kuninaka: 用自定義型別的方式去轉C或WebAssembly?? 03/01 20:55
→ kuninaka: 然後自製虛擬機來跑 03/01 20:55
推 artjio: 感覺像是自己寫了一個底層,因為WASM之前是被拿來說跑AI很 03/01 23:07
→ artjio: 好 03/01 23:07