News for hackers. Stuff that matters.
Re:Announcing WCGI: WebAsseAmbly and CGI by joncfoo on Thursday April 06, 2023 @11:29AM (#35469712)
Next thing you know each wasm assembly will need a package format to ship assets with and have the app server provide common resources to all assemblies, e.g. db connection pools, some notion of security, etc.

Replace Wasmer with the a JVM-based app server and WASM assemblies with JVM-bytecode. The big difference is the source language doesn't matter as long as it's able to be run/replaced by WASM bytecode.

We're heading in circles in a lot of ways

Re:Announcing WCGI: WebAsseAmbly and CGI by syrusakbary on Thursday April 06, 2023 @11:43AM (#35469962)
Indeed. The JVM did a lot of things right, however they missed three that are now solved with Wasm:

* Completely tied to an ecosystem, and incompatible with another (you could not run C programs in the JVM)

* Proprietary (vs based on an open standard)

* They couldn't run in the browser seamlessly

Re:Announcing WCGI: WebAsseAmbly and CGI by ThePhysicist on Thursday April 06, 2023 @12:31PM (#35470786)
Funny that most people seem to have forgotten that browsers used to ship with Java support. Not saying that was a good thing, but 20 years ago you could run JVM apps in the browser without issues. Also, there are dozens of language runtimes for the JVM, e.g. Ruby, Python, Golang, Javascript, Scheme, .... And regarding proprietary software, Wasmer is a for-profit startup that seems to offer open-source tooling with the hope the ecosystem will standardize on it and give them opportunities to monetize that. So not that much unlike Java I'd say.
Re:Announcing WCGI: WebAsseAmbly and CGI by throwaway50609 on Thursday April 06, 2023 @01:41PM (#35471758)
Funny that you forgot about all the security issues of JVM applets that Wasm finally solved
Re:Announcing WCGI: WebAsseAmbly and CGI by baq on Thursday April 06, 2023 @01:45PM (#35471811)
And now you can run a wasm jvm: https://leaningtech.com/cheerpj/ (there are others, too)
Re:Announcing WCGI: WebAsseAmbly and CGI by eyberg on Thursday April 06, 2023 @01:48PM (#35471857)
Like this one?

  #include <stdio.h>
  #include <stdlib.h>

  int main() {
    char *s = "world";

    s[0] = 'o';
    s[1] = 'w';
    s[2] = 'n';
    s[3] = 'e';
    s[4] = 'd';

    printf("Hello, %s\n", s);
  }
Re:Announcing WCGI: WebAsseAmbly and CGI by throwaway50609 on Thursday April 06, 2023 @02:18PM (#35472254)
Just compiled and ran it on my system within Wasm, my computer is still fine. Your point?

The point of Wasm is - programs can and will malfunction (and some will be malicious), so we have to protect the environment that runs it.

Re:Announcing WCGI: WebAsseAmbly and CGI by inconceivable on Thursday April 06, 2023 @04:32PM (#35473993)
try running it in your operating system. it points to memory in the stack.
Re:Announcing WCGI: WebAsseAmbly and CGI by akira2501 on Thursday April 06, 2023 @01:50PM (#35471867)
> but 20 years ago you could run JVM apps in the browser without issues

That was definitely not my experience at that time using a linux desktop.

Re:Announcing WCGI: WebAsseAmbly and CGI by KyeRussell on Friday April 07, 2023 @05:21AM (#35479784)
I’m sure that compared to doing anything else on a Linux desktop it was just fine. You made your bed.
Re:Announcing WCGI: WebAsseAmbly and CGI by akira2501 on Friday April 07, 2023 @05:23PM (#35487134)
It was not. It was demonstrably worse. It had it's own janky UI that barely worked, it failed to understand the filesystem most of the time, and it failed to integrate cleanly with any other devices on the system.

Everything _else_ was able to do this just fine, in particular it's main competition, Adobe flash. That was actually _almost_ a first class experience and I didn't need to track down and install "icedtea" to make it all work. It just worked out of the box.

The JVM promised "write once, run anywhere." You can blame me for that failure, if you like, but it was then and always was a flat lie. You simply choose to ignore this.

Re:Announcing WCGI: WebAsseAmbly and CGI by mixmastamyk on Friday April 07, 2023 @12:03AM (#35477913)
Believe a plugin need to be installed first. Fuzzy memory says the JRE install set it up for you.
Re:Announcing WCGI: WebAsseAmbly and CGI by pookeh on Thursday April 06, 2023 @11:48AM (#35470059)
There was a time when JVM ran in the browsers.
Re:Announcing WCGI: WebAsseAmbly and CGI by syrusakbary on Thursday April 06, 2023 @11:49AM (#35470085)
Yup, via Java Applets. But they were a pain to use, that's why I intentionally wrote "seamlessly" :P
Re:Announcing WCGI: WebAsseAmbly and CGI by ex3ndr on Thursday April 06, 2023 @11:58AM (#35470256)
GWT allowed to run it without applets, also much more efficient than any current stack (since they dont support closure compiler)
Re:Announcing WCGI: WebAsseAmbly and CGI by switchbak on Thursday April 06, 2023 @12:05PM (#35470361)
I spent years working with GWT, it's not nearly as simple as you describe. It's not running "Java" in the browser, it's compiling down (a subset of) Java to Javascript.

That said, GWT was ahead of its time in a lot of ways, but it had warts galore.

Re:Announcing WCGI: WebAsseAmbly and CGI by freeone3000 on Thursday April 06, 2023 @12:59PM (#35471191)
They were better than Flash (which needed a weirder runtime, and couldn’t interact easily with the DOM, and didn’t have variables until version 3). This is hugely improved over JavaScript at the time (pre-XHR) and had less lock-in than ActiveX.
Re:Announcing WCGI: WebAsseAmbly and CGI by wwweston on Thursday April 06, 2023 @01:35PM (#35471684)
As far as I could tell, the big pain point was performance -- they were just too slow on median machines during the late 90s/early 00s window they had mindshare.

I actually enjoyed using them to get around a few browser limitations around the mid-to-late 00s, and they seemed feature/performance competitive with Flash unless what you were doing fit the media authoring model closely. But by then people were skeptical about Java and if you had to do anything to get it installed they wouldn't, and the direction was native web.

Re:Announcing WCGI: WebAsseAmbly and CGI by pjmlp on Thursday April 06, 2023 @02:06PM (#35472056)
The Java Kernel project sorted that out.
Re:Announcing WCGI: WebAsseAmbly and CGI by chunk_waffle on Thursday April 06, 2023 @06:36PM (#35475458)
I recall around 2010 or so, when a company I worked for was creating a new, rather ambitions, web application. I had to argue against using Java Applets in favor of standard web technology for several components. Thankfully I won that battle.

That web application is still in use, in production, today.

Re:Announcing WCGI: WebAsseAmbly and CGI by pitaj on Thursday April 06, 2023 @12:18PM (#35470583)
I would also mention that, especially in the past, the JVM sandboxing was not great. Which is why Applets were such a problem.
Re:Announcing WCGI: WebAsseAmbly and CGI by KRAKRISMOTT on Thursday April 06, 2023 @02:40PM (#35472548)
Not just in the past, arbitrary program sandboxing is not possible even today.
Re:Announcing WCGI: WebAsseAmbly and CGI by kllrnohj on Thursday April 06, 2023 @06:11PM (#35475232)
Exactly, yet everyone pretends wasm is the exception for some reason...
Re:Announcing WCGI: WebAsseAmbly and CGI by nequo on Thursday April 06, 2023 @08:22PM (#35476437)
I don't know about the limitations of sandboxing but I am curious. How does one break out of the JVM's or wasm's sandbox?
Re:Announcing WCGI: WebAsseAmbly and CGI by KRAKRISMOTT on Thursday April 06, 2023 @10:28PM (#35477288)
I meant decent sandboxing on the JVM is not possible, that’s the advantage of WASM.
Re:Announcing WCGI: WebAsseAmbly and CGI by mike_hearn on Saturday April 08, 2023 @07:12AM (#35492244)
The approach is the same in both cases - find an exposed API surface with a privileged implementation, find some way to confuse it, exploit.

In a few cases there were JVM exploits that weren't based on that approach, almost always involving reflection or JIT compiler bugs.

The people saying WASM is easier to sandbox than the JVM are sort of half right and half wrong. The hard part of sandboxing is exposing safe APIs to the sandboxed code. WASM solves that by simply not exposing any APIs at all. This essentially punts the sandbox construction to the user and will allow WASM vendors to claim a good security track record, which they will get by not doing very much.

On the other hand, the OpenJDK guys are retreating from providing any sandbox at all and are taking it out of new Java versions. So you'll end up with mandatory exposed APIs that don't even try to be safe.

Neither approach is really all that great if what you want is the ability to run a useful set of normal-ish programs in a safe way. GraalVM has its own sandboxing features which look like a decent compromise, and you can still use process or VM sandboxing on top.

Re:Announcing WCGI: WebAsseAmbly and CGI by lukevp on Friday April 07, 2023 @10:38AM (#35482011)
Wasm is an exception. It’s designed from the ground up to have an extremely simplistic model of execution that prevents common exploits like buffer overflows and such. The WASM runtime only exposes “safe” things and at an incredibly low level. Everything has to be built on top of these abstractions. The JVM is not architected the same way, the VM has a bunch of APIs exposed to it and you have to attempt to constrain those down to make a program secure. WASM starts from a secure by default position and you grant it capabilities as needed to accomplish the task. If all you need is to take in a string, do some computation, and output a string, then you can run a WASM module with zero disk or network access whatsoever, no ability to integrate with processes, environment variables, or anything else on the system. Trying to run a program on the JVM or CLR but prevent it from reaching out of itself by blacklisting certain functions or something is an exercise in futility.
Re:Announcing WCGI: WebAsseAmbly and CGI by kllrnohj on Friday April 07, 2023 @11:20AM (#35482494)
WASM was designed before spectre happened, so no it's not the exception. In-process sandboxing cannot be securely designed anymore. You can endlessly chase security exploits with increasingly expensive and convoluted workarounds, but that's about it.

> It’s designed from the ground up to have an extremely simplistic model of execution that prevents common exploits like buffer overflows and such.

So is the JVM and CLR and dozens of prior runtimes for that matter.

WASM for guests is mostly a security regression as all the design focus was on protecting the host. Things in the runtime got thrown under the security bus (such as no ASLR)

> The JVM is not architected the same way, the VM has a bunch of APIs exposed to it and you have to attempt to constrain those down to make a program secure.

You're confusing concepts here. The JVM bytecode runtime has very few APIs and WASM has no inherent requirement on being minimal or capability-based. WASI, which is what's being used here, has neither of those design attributes, for example. It's just regular POSIX apis. No permission system + massive API surface, yet still WASM all the same

Re:Announcing WCGI: WebAsseAmbly and CGI by yazzku on Thursday April 06, 2023 @12:53PM (#35471104)
Memory usage too, right? A C++/Rust wasm won't consume a hundredth of the memory a JVM application typically uses. I like getting the job done on a 512MB RAM VPS. JVM the language might be cool; the bloat and forced-GC can be spared.
Re:Announcing WCGI: WebAsseAmbly and CGI by icedchai on Thursday April 06, 2023 @01:07PM (#35471307)
JVM ran in relatively little memory back in the day. I remember running applets on ~16 megabyte systems. Compare that to today where you need a half gig of RAM to even launch a browser.
Re:Announcing WCGI: WebAsseAmbly and CGI by mhitza on Thursday April 06, 2023 @10:20PM (#35477246)
Right, the internet caffee computers I used to hang out at in the early 2000's had around the 128-256mb of RAM memory, and Java/Flash used to run just fine. Although Java Applets usually seemed to take longer to download, and used to wait a lot of time to start the JVM after that.
Re:Announcing WCGI: WebAsseAmbly and CGI by pjmlp on Thursday April 06, 2023 @02:07PM (#35472083)
Just like a JVM for embedded development won't.
Re:Announcing WCGI: WebAsseAmbly and CGI by jeroenhd on Thursday April 06, 2023 @11:54PM (#35477868)
Java can be fast and memory efficient. The problem I see with many Java programs is that they're built on top of layers upon layers of frameworks. Web server frameworks on top of multithreading frameworks with database ORM frameworks and microservice frameworks all calling in and out of each other. Stack traces that end up accumulating 30 or 40 calls before actual product code even begins.

Tuning the garbage collector often helps, modern Java has excellent GC options that will make most software just run better. That's often not an option when you're stuck with JRE 8 because of the curse of legacy code, but modern JREs have made significant progress in both memory management and general performance optimizations.

Port the same abstractions to any language and you'll get very similar performance issues. I've seen plenty of NodeJS applications crash because they grew out of the 2GiB memory limit I set up, and those node processes weren't doing anything that I deemed worth more than half a gigabyte of RAM either.

The JVM is somewhat aggressive in claiming RAM as memory usage grows, but that often leads to a performance increase in the comparisons I've done. Setting parameters (-xmx / -xms) can often reduce the amount of memory used significantly at the cost of slower application startups.

Re:Announcing WCGI: WebAsseAmbly and CGI by michaelmior on Thursday April 06, 2023 @01:00PM (#35471210)
> you could not run C programs in the JVM

Not entirely true, but of course there has never been any official support. http://nestedvm.ibex.org/

Re:Announcing WCGI: WebAsseAmbly and CGI by tubs on Thursday April 06, 2023 @03:05PM (#35472920)
You can't run c in wasm.

You can compile c to wasm and run that.

In the same way one could compile c to java byte code, write a wrapper program to allocate the "heap", disable the gc and execute it in close to the same way it executes in a wasm runtime.

Re:Announcing WCGI: WebAsseAmbly and CGI by 0xbadcafebee on Thursday April 06, 2023 @03:35PM (#35473301)
* * *
Re:Announcing WCGI: WebAsseAmbly and CGI by reginaldo on Thursday April 06, 2023 @04:12PM (#35473713)
The browser "won" on seamless distribution. The browser is all the things you said and worse. It conflates the developer API (which could be as complex as the collective human comprehension will allow) with the execution environment (which must be as simple as possible and understandable to mostly anyone). I have a dream that the browser will turn inside out and start losing APIs that will be reimplemented on WebAssembly. But WebAssembly is moving too slowly e.g. with regards to tail calls and parallelism. So it's probably just a dream from now[1].

[1] https://www.youtube.com/watch?v=zlQEQQSqZ9g -> it's an old dream that others have had before.

Re:Announcing WCGI: WebAsseAmbly and CGI by MR4D on Thursday April 06, 2023 @04:23PM (#35473871)
Unfortunately, the world is scheduled to end (or reboot if you prefer) at 03:14:07 UTC on January 19th, 2038. [0]

So, that means that the remake of an OS that we call a browser is likely to be the pinnacle of computing for our lifetimes.

Hopefully after the Great Reboot of 2038, the next generation will learn from our computing mistakes, but since we've never learned from those that came before us, it's highly unlikely. But at least they will have to start from scratch, so there's a chance!

[0] - https://en.wikipedia.org/wiki/Year_2038_problem

Re:Announcing WCGI: WebAsseAmbly and CGI by mch82 on Thursday April 06, 2023 @04:29PM (#35473954)
> Like a world that never got past the horse and buggy

At lunch one day a colleague explained that the size of the space shuttle could be linked to the width of two horses walking on a Roman road :-)

One of my favorite lunch breaks of all time.

Re:Announcing WCGI: WebAsseAmbly and CGI by qup on Thursday April 06, 2023 @04:37PM (#35474051)
Give us the recap
Re:Announcing WCGI: WebAsseAmbly and CGI by mrec on Thursday April 06, 2023 @05:20PM (#35474640)
http://www.astrodigital.org/space/stshorse.html

I'd be very leery of trusting the specifics too much. E.g. the reference to "Roman war chariots", which are not a thing the Romans ever used.

Snopes entry: https://www.snopes.com/fact-check/railroad-gauge-chariots/

Re:Announcing WCGI: WebAsseAmbly and CGI by qup on Thursday April 06, 2023 @06:02PM (#35475147)
Nice, so dude was actually just reciting an email FWD he studied to sound interesting.

God, I had forgotten about those email FWDs. The old people I know totally abandoned email.

Re:Announcing WCGI: WebAsseAmbly and CGI by KyeRussell on Friday April 07, 2023 @05:20AM (#35479781)
That’s a bit cynical and dickish. Maybe he just read it, found it enjoyable, and remembered it? God.
Re:Announcing WCGI: WebAsseAmbly and CGI by DuckFeathers on Thursday April 06, 2023 @07:30PM (#35475963)
Apple's close ecosystem nonsense and blind worship of vendor-lock-in by the tech community is partly to blame for it.
Re:Announcing WCGI: WebAsseAmbly and CGI by adam_arthur on Thursday April 06, 2023 @08:47PM (#35476640)
Well, that's partly why WASM exists.

It can be run outside a browser, and is much more performant than using the whole browser. The future is very likely going to consolidate around WASM and WebGPU, regardless of what hardware you're targeting. If you want more performant specs, it will be driven through a public and consensus driven way... there are far too many economies of scale to standardization for it not to be.

The days of building an ecosystem around a closed, proprietary language/protocol/spec are over. The browser was just the first to bridge the gap... now we move on to WASM, and maybe 10 years from now something newer

https://wasmer.io/

https://wasi.dev/

Re:Announcing WCGI: WebAsseAmbly and CGI by KyeRussell on Friday April 07, 2023 @05:18AM (#35479770)
Yeah. You’re right. THIS will be the time that open wins. When most peoples primary computing is running an OS developed by one of two companies that have a strong incentive to maintain walled gardens.

Largest /s imaginable.

Your comment is pretty far into LARPing territory.

Re:Announcing WCGI: WebAsseAmbly and CGI by lukevp on Friday April 07, 2023 @10:31AM (#35481941)
Heard of Kubernetes, Docker/OCI, and CNCF? A crapload of computing now is running within Linux (open) in containers (open). Sure, end users use MacOS and Windows as the base OS, but a lot of programs they interact with now are running in a browser or Electron (all open standards-driven things). WASM’s future is as a much more performant and lightweight alternative to containers, to the point where it could be run and used by anyone. containers require a shitload of configuration to be able to run them, but a wasm module can be packaged up in a native assembly that requires zero runtime setup for the end user. Just install and go.
Re:Announcing WCGI: WebAsseAmbly and CGI by 0xbadcafebee on Friday April 07, 2023 @06:12PM (#35487693)
You could say the same thing of Go apps, but they certainly haven't taken over computing. They got a lot of attention from certain corners, but I think everyone acknowledges now that it's just another compiled language. That doesn't solve all your problems, it just solves one. Maybe WASM solves two problems by not needing to be cross-compiled. But there's still a thousand problems left, many of which are addressed by containerization, but not addressed by WASM.

The innovation of "docker containers" as a total solution is more akin to a POSIX standard than the Go language. Containers only became popular because of Docker, not because of containers themselves. Docker is a solution to a dozen different problems. "A container" is really just a chroot in a unique namespace. Again, that's basically just one problem solved. The functional combination of all the features of container orchestration software and interoperability is where the actual value of containers lies. Not in the container, but in the 12 different problems that are now all solved in a universal way by all the different solutions that deal with containers in the same way.

If WASM can evolve an entire ecosystem and standard around all the problems needed to be solved to run software easier, then sure, it could be revolutionary. We'll see if that happens in a way that is easy to use. My bet is it won't happen.

Re:Announcing WCGI: WebAsseAmbly and CGI by adam_arthur on Friday April 07, 2023 @11:38AM (#35482782)
The browser/web is already open. People are writing cross platform apps in browser containers. Open is already the standard.

WASM simply closes the performance gap between “widely accepted open standards” and native.

You seem confused… fewer and fewer people are writing software in OS locked apis/contexts. Back in the day it was much closer to 100%

Re:Announcing WCGI: WebAsseAmbly and CGI by mdellavo on Thursday April 06, 2023 @04:35PM (#35474029)
It's not an open standard but the JVM spec is publically available and intended for multiple implementations

https://docs.oracle.com/javase/specs/jvms/se8/html/

Re:Announcing WCGI: WebAsseAmbly and CGI by pjmlp on Thursday April 06, 2023 @12:13PM (#35470498)
It is incredible how with so much Java hate, the WASM folks are doing their best to replicate everything we had in 2005.
Re:Announcing WCGI: WebAsseAmbly and CGI by nu11ptr on Thursday April 06, 2023 @12:37PM (#35470879)
Honestly, I just think Java was ahead of its time. I hated sites with applets because they felt slow to startup and run. That problem is long gone with modern computers.
Re:Announcing WCGI: WebAsseAmbly and CGI by dianeb on Thursday April 06, 2023 @01:01PM (#35471217)
Sure, this fits the way software evolves on the circle of dumb. It goes something like this: What a great idea!... (a little later) Hmmm. That's a problem... (later) We need something to run apps in the browser. I wonder if WASM would work... (now) What a great idea!...

Software development always goes in cycles. "Apps" were great now maybe not so much so...

In the late 80s/early 90s, the CEO of ETA Systems (a supercomputer company) had a vision that by 2000, the world would be split between supercomputers and workstations. I have seen some evidence that people are considerng that once again... The Circle of Dumb is always with us in software land.

Re:Announcing WCGI: WebAsseAmbly and CGI by frou_dh on Thursday April 06, 2023 @01:22PM (#35471514)
As long as it's refining and making at least some progress then it's more of a helix than a circle
Re:Announcing WCGI: WebAsseAmbly and CGI by Y_Y on Thursday April 06, 2023 @03:45PM (#35473390)
I see it as more of a conical spiral, like water going down a drain.
Re:Announcing WCGI: WebAsseAmbly and CGI by moonchrome on Thursday April 06, 2023 @01:01PM (#35471228)
Java still doesn't have value types AFAIK. Meanwhile WASM started out as no-gc continuous memory VM.

Comparing WASM and JVM is like comparing a truck and a bus because they are relatively the same size, move at the same speed etc.

I mean sure you can load people in trucks and cargo into buses - and both have been done with JVM (eg. people built C compilers) and WASM (people are building GCed runtimes on top of it despite lack of GC support from platform).

Almost 30 years later nobody sane is running C on JVM and there were many attempts posted here over the years.

Re:Announcing WCGI: WebAsseAmbly and CGI by pjmlp on Thursday April 06, 2023 @01:27PM (#35471584)
Nobody sane should be running C, regardless of the target platform.
Re:Announcing WCGI: WebAsseAmbly and CGI by throwaway12245 on Thursday April 06, 2023 @01:30PM (#35471624)
You'd have to delete your operating system and most of your libraries.
Re:Announcing WCGI: WebAsseAmbly and CGI by pjmlp on Thursday April 06, 2023 @01:47PM (#35471837)
Thankfully not all OS are written in C, and many are making efforts to fix that mistake created by UNIX release into the industry.

Similarly, many managed compiled languages don't depend on C.

Finally, cybersecurity legislation will speed those efforts.

Re:Announcing WCGI: WebAsseAmbly and CGI by kllrnohj on Thursday April 06, 2023 @06:26PM (#35475368)
Outside of the kernel it's a lot more C++ than C
Re:Announcing WCGI: WebAsseAmbly and CGI by icedchai on Thursday April 06, 2023 @05:16PM (#35474586)
2005? Maybe 1996. That's when I ran (and wrote) my first applet.
Re:Announcing WCGI: WebAsseAmbly and CGI by miohtama on Thursday April 06, 2023 @05:27PM (#35474734)
We are not replicating Oracle’s lawyers, sales agreements and non-disclosure policies.
Re:Announcing WCGI: WebAsseAmbly and CGI by pjmlp on Friday April 07, 2023 @08:32AM (#35480925)
The hate against Oracle is beautiful, when WASM only exists due to politics against PNaCL, and without Microsoft, Google and Apple there is no WASM standard anyway.

All angel companies that do no evil.

Re:Announcing WCGI: WebAsseAmbly and CGI by gabereiser on Thursday April 06, 2023 @12:55PM (#35471136)
I was just going to say, this road leads to OSGi...
Re:Announcing WCGI: WebAsseAmbly and CGI by tiffanyh on Thursday April 06, 2023 @05:46PM (#35474974)
Don't forget, a mail server will be included at some point since that always seems inevitable.
Re:Announcing WCGI: WebAsseAmbly and CGI by mc_woods on Thursday April 06, 2023 @06:00PM (#35475118)
> Next thing you know each wasm assembly will need a package format to ship assets with and have the app server provide common resources to all assemblies, e.g. db connection pools, some notion of security, etc.

You mean in a OCI image, a bit like this? - https://docs.docker.com/desktop/wasm/

and then deployed using Kubernetes? - a bit like this - https://learn.microsoft.com/en-us/azure/aks/use-wasi-node-po...

Re:Announcing WCGI: WebAsseAmbly and CGI by benatkin on Thursday April 06, 2023 @07:50PM (#35476162)
The delivery of assets sounds like a job for Bindle which is already integrated to Spin, which looks to be more similar to python's WSGI than this

https://www.fermyon.com/spin

https://www.fermyon.com/blog/bindle-what-is-it

Re:Announcing WCGI: WebAsseAmbly and CGI by syrusakbary on Saturday April 08, 2023 @04:04AM (#35491502)
Bindle is one of the worst specifications of a container format I've ever seen, I would personally recommend anyone to stay away from it. No wonder they are moving to OCI...
Re:Announcing WCGI: WebAsseAmbly and CGI by herdcall on Friday April 07, 2023 @06:44PM (#35488031)
Multi language support is just one of the selling points, you didn't mention the other two: sandboxed security with explicit capabilities and high performance. E.g., I have a Web Assembly module running on the server (Fermyon) that needs explicit capabilities defined to even make a network call to a Twilio endpoint or read a local file. That means you can run a random Web Assembly module that you with confidence, just like you can typically open a random website on the browser without concern. By contast, you can't say that when running a random Java class that you don't trust.