# Frequently asked questions
Questions that may arise before, at or after this point. so if you're wondering about one thing or another, here it is:
|Compute-heavy algorithm||Use WebAssembly|
|Games||Use WebAssembly for CPU-intensive parts|
|WebGL||Depends how much of it is calling APIs. Probably both.|
Or: WebAssembly is great for computational tasks, stuff with numbers, but still needs some time to become more convenient and efficient at the same time where sharing numbers between the module and the host is not enough.
Not always, but there are use cases especially well-suited for it, like creating a Game Boy emulator by making use of its low-level capabilities, essentially emitting raw WebAssembly using a nicer syntax. But pre-existing TypeScript code doesn't magically become faster just by compiling to WebAssembly, especially when making extensive use of managed objects that require memory management and garbage collection (this has its cost in every language) or talking to the host in structures that WebAssembly isn't currently good at, like strings or more complex objects. Low-level code (just functions, numbers, math and hard work) is always the best choice when all you care about is raw performance.
# Will AssemblyScript support all of TypeScript eventually?
# How can I help?
There are various ways to help. AssemblyScript is an open source project, and everyone is welcome to contribute code (opens new window), documentation (opens new window), or time. We also have an OpenCollective (opens new window) for those preferring to help the project out with a sponsorship.