What is Webassembly?

Part 1: Literature Review

Part: 0 1 2

Literature Review

It's a bit weird that right now, typing 'learn webassembly' into Google brings back a top hit for this Medium post which doesn't really explain anything that you can't find on the main web assembly page. It includes 5 steps, of which number 4 is 'learn C or C++' and number 5 is 'learn webassembly', which he assures us "is no trivial task". Hmmm. Thanks Mike.

As of right now, the article only has 137 'claps' which must mean I'm way ahead of the curve in deciding to learn this stuff 😊

Mike does provide us with this: https://github.com/mikerourke/webassembly-boilerplate

Duckduckgo gives us this: https://auth0.com/blog/7-things-you-should-know-about-web-assembly/ which is two years old, so we'd better be wary of that, too.

This is a good introduction video: https://www.youtube.com/watch?time_continue=2&v=6v4E6oksar0

includes a history lesson

check out the demos towards the end = web dsp (live edge detection at ~60 frames/sec.

x | 0

Actual Assembly Codes

This guy: https://medium.com/@MadsSejersen/webassembly-the-missing-tutorial-95f8580b08ba

is writing actual binary via javascript. Rad.

Game of Life

This: https://blog.openbloc.fr/webassembly-first-steps/

shows how to make a game-of-life engine and integrate it into JS - he's using a webpack to build it.

Official Docs

http://webassembly.org/getting-started/developers-guide/

emscripten

http://kripken.github.io/emscripten-site/docs/getting_started/downloads.html#sdk-download-and-install

https://brendaneich.com/2015/06/from-asm-js-to-webassembly/

LLVM

https://en.wikipedia.org/wiki/LLVM

C/C++

The faq: http://webassembly.org/docs/faq/ tell us that, initially at least, wasm is very focussed on C/C++

Direct bindings: https://github.com/mbasso/asm-dom

JSX-like syntax: https://github.com/mbasso/gccx

Haskell

https://www.reddit.com/r/haskell/comments/7cmppn/a_great_thread_in_case_you_missed_it_the_future/

https://github.com/haskell-wasm

https://github.com/haskell-wasm/wasm

https://www.reddit.com/r/haskell/comments/7cy86h/a_haskell_to_wasm_compiler_wow/

Good tutorials?

https://www.lucidchart.com/techblog/2017/05/16/webassembly-overview-so-fast-so-fun-sorta-difficult/

As usual, the Mozilla docs seem to be the best place to start:

https://developer.mozilla.org/en-US/docs/WebAssembly

Community group

https://www.w3.org/community/webassembly/

https://github.com/shamadee/web-dsp

web assembly openCV: https://hacks.mozilla.org/2017/09/bootcamps-webassembly-and-computer-vision/

Day2

Better integration

http://floooh.github.io/2017/02/22/emsc-html.html

-covers integrating a HTML/css ui layer with a wasm compiled 'app'

Stack MAchine

WASM is a stack machine: https://en.wikipedia.org/wiki/Stack_machine

Future Features

http://webassembly.org/docs/future-features/

Next: Next: Next: Next: