Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

WebAssembly (and asm.js) is not really a "VM" as in JVM or .NET in that it does not provide services they do, like GC and adaptive JIT. I think the best description of WebAssembly is a reincarnation of p-code.


It is very much a VM, in that it executes generic bytecode. Furthermore the Javascript engines of modern browsers (on which this proposal is based) do JIT JS. Not having GC doesn't mean it's not a VM.

Quoting the wikipedia article of p-code:

> In computer programming, a p-code machine ... is a virtual machine designed to execute p-code


Wasm is not a bytecode. It is a binary AST.


Yes, it is a VM, but not "VM as in JVM or .NET". "VM" in Bob Nystrom's article is used as a later sense. Hence the article mostly does not apply to WebAssembly.

On the topic of JIT, the whole point of WebAssembly (and asm.js) is that it is so simple that you don't need JIT to execute it. You can AOT it fine.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: