AsssemblyScript, in short, ASM, is a programming language that compiles to WebAssembly - only to WebAssembly. The language is based on TypeScript, but with three huge differences:
- ASM forces you to provide types, and "any" is not allowed
- ASM brings in C-style types like 32 bit and 64 bit Integers
- ASM offers a standard library with low-level functions
Already used in production, yet some essential features like closures are missing.
As the source, the official documentation is used.