Announcement

Collapse
No announcement yet.

Wasmtime 1.0 Released - Bytecode Alliance Declares It Production Ready

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    A win for cryptojacking.

    Comment


    • #12
      Originally posted by Vorpal View Post
      So what is the actual use case of this, for me as an end user? Why do I want wasm outside browsers? Is it just for devs to be able to ship the same code for two environments? Does it offer some nice sandboxing? What's the selling point that would make me care?
      it simply allows easy preformant crossplatform stuff with a OS and architecture agnostic approach, you could simply port wasmtime to whatever OS or architecture you want, and get accsess to wasm apps. this could even be something like Haiku, redox, or Android even or porting apps to ppc or risc-v. and then you could use apps like libreoffice-wasm. or even some wasm based emulators like I think Play! (ps2 emulator)

      ofc preformance isn't native, but it can be pretty good all things considered (check out https://copy.sh/v86/ for a real neat wasm showcase)

      Comment


      • #13
        Originally posted by Vorpal View Post
        So what is the actual use case of this, for me as an end user? Why do I want wasm outside browsers? Is it just for devs to be able to ship the same code for two environments? Does it offer some nice sandboxing? What's the selling point that would make me care?
        One of the usecase I saw was using it for plugins for Desktop apps , their startup time is 5-10ms so you can deploy small http apps https://twitter.com/matei_radu/statu...98310857400320 and to make super Apps

        Comment


        • #14
          Would this allow to develop something like a web app that could be detached from the browser and stored on a phone? This could then allow developers to target one open platform and get us out of the scheme of Apple/Android walled gardens. I thought remembering reading about that when I started reading about WebAssembly, but haven't seen anything about it since, so maybe it was just me dreaming

          Comment


          • #15
            Can this be used to write GUI programs as well? E.g. a C++/Qt app compiled to wasm, that runs on every Wasmtime supported platform?

            Comment


            • #16
              Originally posted by nabajour View Post
              Would this allow to develop something like a web app that could be detached from the browser and stored on a phone? This could then allow developers to target one open platform and get us out of the scheme of Apple/Android walled gardens. I thought remembering reading about that when I started reading about WebAssembly, but haven't seen anything about it since, so maybe it was just me dreaming
              This works for years already: How to install a Progressive Web App on your phone and computer
              Whether the web app is in JavaScript or WebAssembly is the developer's choice. WASM is supported on iOS and Android, too.

              EDIT: An example of a PWA app, which works offline and works with files locally, is this PhotoShop web clone: https://www.photopea.com/
              Last edited by Ladis; 21 September 2022, 05:22 AM.

              Comment


              • #17
                Originally posted by Lycanthropist View Post
                Can this be used to write GUI programs as well? E.g. a C++/Qt app compiled to wasm, that runs on every Wasmtime supported platform?
                Qt supports WASM for years: Qt WebAssembly Demos & Examples

                Comment


                • #18
                  The Enarx project runs WebAssembly (WASI) workloads in a trusted execution environment (TEE: such as Intel SGX, AMD SEV). WebAssembly gets us a few things:
                  • Security first: Wasi applications can only make networking connections with prior authorization. Apps also can only read/write files with authorization. So greater control with regard to what an application can do. It's like having an application-level firewall built in.
                  • Prevent vendor lock-in: Wasm applications don't know about the architecture being used (Intel vs. AMD). Normally, an application would have to be aware of the technology being used, but Wasm helps us abstract that away.
                  • Any language: Wasm/Wasi is it's a byte code format which is separate from a language, so developers can use any language which supports Wasi and run their code in a TEE (what we call a Keep). Rust, C, C++, Go, .net are the best supported today.
                  • Cross-platform: When ARMv9 and ARM's Confidential Compute Architecture (CCA) comes out, Enarx will allow running the exact same workload on different CPU architectures.
                  A nice thing about Wasm/Wasi is it's a byte code format which is separate from a language. So any application, any OS, any programming language can use it. For example, you could have a native application which has plugins which work on any OS/arch. Maybe Wasm beats Java at it's own game: "write once run anywhere".

                  Disclaimer: I'm one of the Enarx devs, so maybe biased about Wasm.
                  Enarx: Confidential Computing with WebAssembly. Contribute to enarx/enarx development by creating an account on GitHub.
                  Last edited by rjzak; 21 September 2022, 10:23 AM. Reason: Add any language part for Enarx

                  Comment


                  • #19
                    Originally posted by Lycanthropist View Post
                    Can this be used to write GUI programs as well? E.g. a C++/Qt app compiled to wasm, that runs on every Wasmtime supported platform?
                    Wasi can't run GUI apps, since it doesn't support linking to shared libraries. The QT app could run in the browser, which is Wasm not Wasi. Wasi is like Posix for Wasm.

                    Comment


                    • #20
                      Originally posted by rjzak View Post

                      Wasi can't run GUI apps, since it doesn't support linking to shared libraries. The QT app could run in the browser, which is Wasm not Wasi. Wasi is like Posix for Wasm.
                      That's wrong.
                      You could just compile GUI library to wasm and link with the app.

                      It may be hard, but not impossible.

                      Ladis already gives you the link https://www.qt.io/qt-examples-for-webassembly

                      Comment

                      Working...
                      X