web2js
PascalをWebAssemblyに変換するツール
https://github.com/kisonecat/web2js
解説記事
GPT-4oに読ませたもの
https://chatgpt.com/c/88dfb53a-97b3-4ade-8b5f-fe7711657545
forks
https://github.com/drgrice1/web2js/tree/ww-modifications
kisonecatのほうの更新
drgrice1のほうの更新
他に修正が入っているforksはなさそう
502854 | tex core - How to make an e-TeX WebAssembly with Jim Fowler's WEB/TeX pascal to WASM compiler web2js? - TeX - LaTeX Stack Exchange
解説?
code reading
library.js
wasmのloadとWebAssembly.importObjectsの定義が書かれている
exportsとimportsの型定義はここを参照
TikZJaxに入っているver.は、fsのAPIをbrowser上で動かすために仮想メモリ上に書き込むものに置き換えたものが実装されている
writeSync
openSync
TypeScript化
特にFile objectなどの型の変化がややこしく、型付けが難しい
幸いforkにtypescript化したものがあるので、それを使う
https://github.com/benrbray/tikzjax/blob/fa8f1fa20b757d5eb7f2e2384312982c4c5be6dc/src/library.ts
中身
startUnwind
startRewind
stopRewind
deleteEverything
writeFileSync
readFileSync
fs
openSync
ファイルの取扱
filesystem:外から取り込んだファイルがここに入る
files:Webassembly.Memory上に展開されたファイルを管理している
ファイル名と、メモリ上のデータの位置が含まれている
#2024-01-31 22:45:56
#2024-01-13 19:14:22
#2023-12-18 14:52:02