Chapter 17. WebAssembly and Other Languages

If you talk to a man in a language he understands, that goes to his head. If you talk to him in his own language, that goes to his heart.

Nelson Mandela

We are getting to the end of our story, at least for now. We have seen a wide range of use cases, language and platform integrations, hosting environments, and more where WebAssembly is shining already. There are quite a few choices for developers to make to be productive and effective with this exciting new platform. There are also concrete reasons why some languages and their associated runtimes work well with WebAssembly and others do not. The lack of garbage collection and good thread support everywhere are among the obstacles that have existed since the early days of the MVP, but both are well on their way to being resolved.

As we saw in Chapter 12, these and other limitations are well understood and increasingly available in various host and runtime environments. The future is bright for much wider support of just about any language developers might like to use. So, please, if your favorite language is not yet supported, keep your chin up. I do not think it will be long before it might be.

That being said, there are incremental efforts, partial solutions, and works in progress for many other popular and even emerging-but-still-somewhat-niche languages that we will address in this chapter. I do not suggest that these are drop-in replacements for the more well-supported languages, ...

Get WebAssembly: The Definitive Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.