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

I'm actually pretty excited about the three features you mention, mainly because it would make WASM useful to me.


Why not make WASM as simple as possible, and let layers on top of it deal with extensions like GC?

Stacking abstractions, like how computer architecture used to work in the old days.


If you provide a non-opinionated base platform, users will add opinions, and those will not all be compatible with each other.

Not adding GC or not defining how exceptions work could easily lead to a situation where you want to use a couple of third-party libraries, but discover they, combined, use three different garbage-collecting memory allocators and two different ways to handle exceptions, even where function overloading works differently in different libraries.

As an example, look at string implementations in various C programs. Even if they if they boil down to a pair (int, malloced memory), you still might not be able to pass one obtained from a function in one library to a function in another library.


Sounds nice in theory, but I suppose that if Linux or OSX or whatever OS you use forced developers to use one style of GC, a lot of people would be very disappointed.


I believe that the problem is that the more features you add, the less general it's going to be (for example, add canonical exception handling and you'll almost certainly exclude Common Lisp, the advanced exception handling features of which the canonical exception handling for WASM almost certainly won't include). Presumably on a scale from a physical computer to a JVM, you don't want to slide towards JVM too much, since not everyone wants to program in Java.


Sounds like what you want is Java Applets.


Everyone wants graalvm, people have just not realized it yet and it's sad




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

Search: