Making WebAssembly a first-class language on the Web | Hacker News
| Hacker Newsnew | past | comments | ask | show | jobs | submit| login
Making WebAssembly a first-class language on the Web (hacks.mozilla.org)
664 points by mikece 3 months ago | hide | past | favorite | 271 comments
| mananaysiempre 3 months ago | next [–]
This (appears as though it) all could have happened half a decade ago had the interface-types people not abandoned[1,2] their initial problem statement of WebIDL support in WebAssembly in favour of building Yet Another IDL while declaring[3] the lack of DOM access a non-issue. (I understand the market realities that led to this, I think. This wasn’t a whim or pure NIH. Yet I still cannot help but lament the lost time.)Better late than never I guess.[1] https://github.com/WebAssembly/interface-types/commit/f8ba0d...[2] https://wingolog.org/archives/2023/10/19/requiem-for-a-strin...[3] https://queue.acm.org/detail.cfm?id=3746174
| eqrion 3 months ago | parent | next [–]
I worked on the original interface-types proposal a little bit before it became the component model. Two goals that were added were:
- Support non-Web API's
- Support limited cross language interop
WebIDL is the union of JS and Web API's, and while expressive, has many concepts that conflict with those goals. Component interfaces take more of an intersection approach that isn't as expressive, but is much more portable.I personally have always cared about DOM access, but the Wasm CG has been really busy with higher priority things. Writing this post was sort of a way to say that at least some people haven't forgotten about this, and still plan on working on this.
| mananaysiempre 3 months ago | root | parent | next [–]
Two goals that were added were: 1. Support non-Web API's. 2. Support limited cross language interop.I mean, surely it does not come to a surprise to anyone that either of these is a huge deal, let alone both. It seems clear that non-Web runtimes have had a huge influence on the development priorities of WebAssembly—not inherently a bad thing but in this case it came at the expense of the actual Web.> WebIDL is the union of JS and Web API's, and while expressive, has many concepts that conflict with those goals.Yes, another part of the problem, unrelated to the WIT story, seems to have been the abandonment of the idea that