Go on Embedded Systems and WebAssembly

https://tinygo.org/

TinyGo Home

TinyGo - A Go Compiler For Small Places Get Started See the code Go on embedded systems and WebAssembly TinyGo brings the Go programming language to embedded systems and to the modern web by creating a new compiler based on LLVM. You can compile and run TinyGo programs on over 100 different microcontroller boards from maker boards such as the BBC micro:bit and the Arduino Uno, to industrial processors from Nordic Semiconductor and ST Microelectronics.

TinyGo
Writing embedded code with an async-aware programming language is wonderful (see Rust's embassy), but wonder how competitive this is when you need to push large quantities of data through a micro controller, I presume this is not suitable for real-time stuff?

Can you elaborate on this and how it would be different from signaling on interrupts and DMA?

Hardware-level async makes sense to me. I can scope it. I can read the data sheet.

Software async in contrast seems difficult to characterize and reason about so I've been intimidated.