> This Standard defines the Common Language Infrastructure (CLI) in which applications written in multiple high-level languages can be executed in different system environments without the need to rewrite those applications to take into consideration the unique characteristics of those environments.
I've seen you comment this on a lot WASM posts (often as a criticism) so I have to ask, as someone who doesn't have knowledge of either, what is bad about this? Even if Web Assembly only has a subset of what CLR offers, isn't it a good thing a standard has been created that people are actually able to implement?
If Microsoft was not aligned with developers in the early 2000's, that failure is on them.
Presenting as if it was the first done anyone has done any of this, UNCOL was the first time such ideas came to be, in 1958.
Plenty of historical attempts to dive into, since 1958.
Now we have startups redoing Java and .NET application servers, with Kubernetes, WebAssembly, WASI, and YAML spaghetti, because that is so much better.
Edge devices running bytecode? That is so last century.
You're right that the fundamental ideas behind WebAssembly and WASI are not particularly new.
The most exciting part about WASI for me, though, is that it's sticking to a capability-based interface and it's actually gaining a lot of traction. There are few examples of capability systems getting as much attention as this.
This just seems like an odd way to put people down, though. Some of us are not going to know the origin of most things that we use, but the reason for that is because those things weren't successful and web assembly is (relatively).
When people are present stuff as new they should have done their research, otherwise we will never get free from the computing fashion industry.
It is like microservices bandwagon nowadays, apparently distributed computing "Network is the Computer", computing agents, distributed objects, and service oriented architectures, also failed by the wayside.
If the CLR wouldn't have focused on managed languages like C# but instead would have allowed to run C and C++ (unmodified, not the Franken-C++ Microsoft came up with multiple times which required substantial code modifications) more people would have taken it serious. Same with the JVM+Java+Oracle combo.
But then Emscripten came along and showed how it's done properly, and everything derived from that (asm.js, WASM, WASI) was just evolution at work.
> Microsoft and its partners hold patents for CLI. Ecma and ISO/IEC require that all patents essential to implementation be made available under "reasonable and non-discriminatory (RAND) terms." It is common for RAND licensing to require some royalty payment, which could be a cause for concern with Mono. As of January 2013, neither Microsoft nor its partners have identified any patents essential to CLI implementations subject to RAND terms.
With such FUD, I guess no wonder CLI didn't have wider adoption.
The open source implementation of CLI was also left to the community, the main one being proprietary. If Microsoft & co wanted an actual usable standard, they could have done a better job.
I'm answering a comment of yours that exclusively mentions CLI. You can't blame anyone for not reusing the un-reusable. You are not contradicting me on this so let's forget about CLI, it doesn't matter it was done before since it's not a viable option or wasn't at the time WASI was being created. Or actually refute this if you think this is wrong.
Now, you are extending the scope to "all bytecode formats ever created" but that's not what I replied to and it makes your point a moving target. But fine, let's extend the scope, though I don't have a particular opinion on WASI, I haven't looked into it much.
How do you feel about the existence of multiple programming languages? CPU instruction sets? serialization formats?
Maybe WASI was specifically designed with the use case at hand and a new design was the better option. Saying previous work exists is not nearly enough. Most things are like this. They build on top of existing stuff taking inspiration from prior work.
I know nothing much about WASI. Convince me that an existing bytecode would have been better. Describe specific and detailed flaws.
Until then I'll just consider you just hate it for some unknown reason, so much you want others to join you.
If Microsoft was not aligned with developers in the early 2000's, that failure is on them.