4 ms·
> it becomes usable [...] for interfacing with the web browser As soon as you add DOM integration... all the things people hate about JS in terms of architectu
by abritinthebay 8y ago
> it becomes usable [...] for interfacing with the web browser
As soon as you add DOM integration... all the things people hate about JS in terms of architecture and compromises will show up in WASM.
- jpfed 8y agoThis is a common sentiment but it certainly doesn't cover "all the things" people hate. I hate dynamic types, I hate imperatively constructing "types" through prototypal inheritance, I hate "this", and none of that has anything to do with the DOM.
- abritinthebay 8y ago> I hate imperatively constructing "types" through prototypal inheritance You hate objects... basically?
- jpfed 8y agoWhile objects are overrated, that's not what I'm talking about here. I didn't say "imperatively constructing objects of a type", I said "imperatively constructing types". This has likely changed since I last used javascript, but in the bad old days, if you wanted to specify a "type" (in the structural sense- a common set of fields that you might construct instances of), you build that type with statements rather than declarations. That feels icky. Also, that means that any potential IDE has to interpret your code (rather than simply parsing declarations) to provide any real support for you, which meant it took forever for IDEs to provide things like autocomplete (let alone foolproof renaming).
- abritinthebay 8y agoLikely you'd like the modern class syntax then. You declaratively specific the "class" (it's just an Object under the hood, it's mostly sugar for prototypes) and then you could just to instanceOf to test if it's your "type". I mean in JS basically everything is an object so if you're constructing a "type" you're constructing an object no matter what.
- danield9tqh 8y agoI think that's fine because WASM isn't meant to write code in. It's just a source language for other compiled languages. I'm assuming the javascript complaints you're talking about are because people actually have to write javascript code?
- captainbland 8y agoEven then I don't think they would tie it to the WASM definition that tightly as they intend it to be used on other platforms than just web browsers. It seems to me that you could just have the DOM be expressed as a kind of interface which the browser implements, and then each language just has a DOM library which exposes that interface to the programmer.
- abritinthebay 8y agoRight, I agree but every time someone talks about tighter integration with the browser it really, under the hood, requires DOM access. Because it does basically everything else (or is spec'd to).