[HN Gopher] Debugging WebAssembly with Modern Tools
       ___________________________________________________________________
        
       Debugging WebAssembly with Modern Tools
        
       Author : feross
       Score  : 129 points
       Date   : 2020-12-10 13:44 UTC (9 hours ago)
        
 (HTM) web link (developers.google.com)
 (TXT) w3m dump (developers.google.com)
        
       | ArtWomb wrote:
       | Awesome! This is the web summit talk I was looking forward to. So
       | part of the promise of wasm is its integration with the web api
       | and dom. In the fractal application for example if we extend that
       | to include a zoom function that handles mouse events and updates
       | variables, I'm probably employing something like blazor or js-sys
       | in rust. How will that high level integration be handled in the
       | dev console? And is it possible to create custom visualizations?
       | Thanks in advance ;)
        
       | flohofwoe wrote:
       | I just tried it and it works pretty well. Awfully slow on my
       | mid-2014 MacBookPro though, especially the variable-view-panel
       | redrawing takes very long (1..2 seconds). But definitely a
       | promising new start compared to the older source-map debugging
       | solution.
       | 
       | Hopefully this will also lead to a 'seamless debugging
       | experience' inside VSCode. It would be pretty awesome to have
       | (for instance) a HTML panel with a WebGL canvas in one VSCode tab
       | while stepping through the C/C++ code in another tab. With a bit
       | of tinkering this would also make a nice shadertoy-style live-
       | coding environment.
        
         | kowbell wrote:
         | Not WebAssembly related, but there are already VSCode plugins
         | for "a nice shadertoy-style live-coding environment!"
         | 
         | GLSL preview:
         | https://marketplace.visualstudio.com/items?itemName=circlede...
         | 
         | Full on Shadertoy environment (preview panel, lets you use
         | Shadertoy's uniforms):
         | https://marketplace.visualstudio.com/items?itemName=stevenso...
        
         | RReverser wrote:
         | Interesting, are you on the latest Chrome Canary? If so, could
         | you please report a bug with a simple repro to the
         | https://bugs.chromium.org/p/chromium/issues/entry?template=D...
         | link mentioned in the article?
        
       | rhencke wrote:
       | I never that the tools I used for tracing (chrome://tracing) and
       | now debugging C/C++ code would be my web browser itself.
        
       | worik wrote:
       | Although I have no use for it currently I am fascinated by Web-
       | assembly (and PWAs). But is it actually useful? I understand why
       | theoretically it is, but is it being useful in practise?
       | 
       | Answering my own question, a little, I use figma.com a lot. But
       | the potential seems so great, and the available PWAs so poor....
       | 
       | Expecting this is a good place to ask
        
         | brundolf wrote:
         | It's mainly hamstrung right now by the hoops you have to jump
         | through to get it talking to the actual web page, is my
         | understanding. Some companies though, like Cloudflare, are
         | playing with it as a cross-platform server/desktop runtime,
         | which is interesting
        
         | merb wrote:
         | webassembly would be a good thing to have extensions within
         | your app via wasmer/wasi unfortunatly not many languages are
         | going into webassembly
        
         | qwertycrackers wrote:
         | I'm coming at with from a similar place as you; I think it's
         | really cool but the benefits are somewhat fringe for normal web
         | apps.
         | 
         | I'm currently writing a SPA in WASM just because I want to play
         | with trendy tech, and the biggest benefit I have observed is
         | massive code size improvement. A similar app I wrote using
         | React had an uncompressed bundle size of about 2 Mb (ouch),
         | which gzipped down to 400 kb. The wasm competitor is about 150
         | kb and 90 kb gzipped, which is a pretty good code size savings,
         | although still a little bloated. I also strongly prefer the
         | Rust development experience over Typescript, even though TS was
         | perfectly serviceable and the WASM-browser interface is still a
         | little unpolished (but still quite capable). Overall my
         | experience tells me WASM has a strong future but we are house
         | on the bleeding edge of usability at the moment.
        
         | Birch-san wrote:
         | It's absolutely useful in practice. Sometimes the library you
         | need was written in C++, and needs to run performantly and
         | offline. I needed WASM and PWA to make an offline Japanese
         | dictionary: https://birchlabs.co.uk/mecab-web/index.html It
         | uses WASM to do linguistic processing via the C++ library,
         | mecab. It tells you where the spaces should go in a Japanese
         | sentence, and what the dictionary form is of each word (so you
         | can lookup the meaning).
        
         | RReverser wrote:
         | > Answering my own question, a little, I use figma.com a lot.
         | But the potential seems so great, and the available PWAs so
         | poor....
         | 
         | It's just that WebAssembly, like any new technology, can and
         | usually is used in very specific paths that require it.
         | 
         | As a result, it's true that there is not that many full
         | WebAssembly-powered PWAs, although the ones that are, like
         | Figma you already mentioned or Google Earth or various Blazor-
         | powered apps already speak for themselves.
         | 
         | However, there is even more apps and websites out there that
         | use Wasm either directly or via library dependencies for
         | calculations, graphics or even things like hyphenation - in my
         | research https://github.com/mnater/Hyphenopoly was one of the
         | most popular Wasm-powered libs used across a bunch of CMS and
         | blog platforms - probably the last place you would expect to
         | find WebAssembly in, and yet...
        
       ___________________________________________________________________
       (page generated 2020-12-10 23:01 UTC)