This is a BytePusher implementation written largely in WebAssembly's text syntax. Try on the web: https://sgeo.github.io/BytePusherWASM/
requestAnimationFrame
is used without checking framerate, so it may not run correctly on non-60Hz monitors- This implementation uses multiple memories, which is not available yet on Safari, and may not be present elsewhere. https://webassembly.org/features/
- Additional cleanup to make it easier to switch between programs would be nice