MoonBit Blog
moonbitlang.com · Company blog · on HN since 2023
The official blog of the MoonBit programming language team, covering its compiler, WebAssembly support, back ends and AI toolchain.
What HN saysCommenters describe MoonBit as a strong 'Rust with GC', praise its design, and bring it up in discussions of LLM-friendly languages.
35HN people shared it
17linked it in comments
37stories submitted
164story points
4 months agolast shared
2023people per year2026
Most-shared posts
- 1Homepage6 people · first shared 2024
- 2MoonBit compiler is available on GitHub4 people · 66 points · first shared 2024 · 27 comments on HN
- 3MoonBit: Exploring the Design of an AI-Native Language Toolchain4 people · 2 points · first shared 2024 · discussion on HN
- 4Moonbit: The fast, compact and user friendly language for WebAssembly3 people · 3 points · first shared 2023 · 2 comments on HN
- 5Developing WASM component model in MoonBit with minimal output size3 people · 2 points · first shared 2024 · discussion on HN
- 6Syntax3 people · first shared 2023
- 7LLVM Back End for MoonBit2 people · 24 points · first shared 2025 · 11 comments on HN
- 8MoonBit adds JavaScript back end, up to 25x faster than native JavaScript2 people · 5 points · first shared 2024 · discussion on HN
- 9Building a battle tested C compiler in a new language using Codex2 people · 4 points · first shared 2026 · 1 comments on HN
- 10MoonBit native, up to 15x faster than Java in numerics2 people · 4 points · first shared 2024 · discussion on HN
- 11Markdown-Oriented Programming in MoonBit: Bridging Code and Documentation2 people · 3 points · first shared 2025 · 1 comments on HN
- 12Introduce the Elm Architecture to MoonBit1 people · 10 points · first shared 2025 · discussion on HN
- 13Profiling MoonBit-Generated WASM Using Chrome1 people · 4 points · first shared 2025 · discussion on HN
- 14Implementing CRDT Algorithms with MoonBit1 people · 3 points · first shared 2026 · 1 comments on HN
- 15Consuming a High Performance WASM Library in MoonBit from JavaScript1 people · 3 points · first shared 2025 · 2 comments on HN
What HN people wrote when they linked it
mirekrusin · 2026-04-05
MoonBit [0] is the best/future complete/active “rust with gc”.
[0] https://www.moonbitlang.com
obeavs · 2024-11-25
Worth nothing that the former lead dev of ReScript left to create a WASM-first language call Moonbit (https://www.moonbitlang.com/). The language design is awesome and corrects a lot of the corners that they just couldn't get around in OCAML. A touch early, but really well done.
mchaver · 2026-07-10
> I suspect that Rust will start taking over as a dominant LLM output language.
I doubt it. I think most people will become more entrenched in their favored ecosystem.
> I also suspect that in short order we'll have entirely new languages that are engineered to be ideal languages for LLMs to generate.
This is already happening. A couple months ago I came across this language that is engineered for AI and human consumption https://www.moonbitlang.com/
phillc73 · 2026-05-16
Also in this space is Moonbit[1] and Vera[2]. A performance comparison between them, across multiple factors, would be interesting because I have no idea of the pros and cons of each.
[1] https://www.moonbitlang.com/
[2] https://veralang.dev/
skruger · 2025-07-08
As to the training set's depth of APL, yes, it's an issue. However, it's worth seeing how well MoonBit[1, 2] works with LLMs, faced with exactly the same problem -- integrating the LLM directly into the parser pipeline.
1: https://www.youtube.com/watch?v=SnY0F9w1xdM 2: https://www.moonbitlang.com/blog/moonbit-ai
kukiTsui · 2025-02-17
You wouldn't want to miss MoonBit if you are interested in WASM. It is the most WASM-optimized language, quite promising. https://www.moonbitlang.com/
jauntywundrkind · 2025-01-04
Nice seeing a hands on use case like this!
Glad to see MoonBit has wasm components / component-model support! Being able to use MoonBit with other langs greatly heightens the chance of folks being able to use it, imo. https://www.moonbitlang.com/blog/component-model
jiyinyiyong · 2025-07-20
brooksmtownsend · 2025-02-14
To start with a bit of project history, we love Wasmtime and that’s our core runtime of choice! Before wasmCloud 1.0, e.g. from 2019-2023, we only used Wasm modules with our own custom ABI. Literally everyone was doing this at the time, to run Wasm you either needed to adopt a platform with a custom ABI or invent it yourself and re-solve all the same problems. The component model and its canonical ABI was a huge opportunity for us to stop maintaining our own and integrate into the ecosystem; now you see examples in projects like Moonbit which just work with wasmCloud out of the box, huge win for us https://www.moonbitlang.com/blog/component-model.
On the WASI side itself, I understand that moving WASI from p1 to p2 was a big but necessary leap. Everyone wanted sockets and HTTP and there was no easy way to rev the monolithic ABI of preview1 to add what was needed in small increments. That’s why you see adapters to move from p1 to p2, which wrap a Wasm module with component metadata, but a component actually just straight up contains the module (you can see it if you look at the textual representation.) We’ll have the same thing from p2 to p3. Not to mention, some systems that don’t support the component model like in Node.js actually “unbundle” the inner module from the component and that works just fine. So from what I understand, module support will never be dropped.
hongbo_zhang · 2025-06-20
Yes, I think this is the missing part. You may have a look at MoonBit(https://www.moonbitlang.com/blog/moonbit-markdown) which has the full IDE support in the markdown editing
inerte · 2025-06-05
I was looking for a programming language that's being written with LLMs in mind, and used ChatGPT to give me some pointers so I can start some research https://chatgpt.com/share/6841d3b7-13a8-800f-9bcc-0f7859114c85
In my mind (I am a non-academic that never really designed a new programming language), I can imagine strong typing, terseness, and no optional syntax (you can do this multiple ways) would be really cool for LLMs.
I did come across a few languages / people trying to design programming languages to be used with LLMs / AI Agents, and I think the most promising thing I found is https://www.moonbitlang.com/blog/moonbit-ai - which takes the whole idea of working with LLMs to another level, with actual features designed to work with agents (not only syntax).
sn9 · 2025-05-07
Can I interest you in some Moonbit?
https://www.moonbitlang.com/blog/first-announce
yencabulator · 2025-01-06
Looks like they claim to be "open source" while the license is most definitely not open source.
https://www.moonbitlang.com/blog/compiler-opensource
> Why are we open-sourcing the Wasm backend?
> Modifications to the compiler are allowed for non-commercial purposes.
azakai · 2025-01-04
> is moonbit charging?
I assume GP refers to the license of MoonBit, SSPL + exceptions, which is not generally considered fully open source.
https://www.moonbitlang.com/blog/compiler-opensource#why-a-relaxed-ssp…
Usually this type of license is used to keep more profit options open, but it will slow down adoption.
MarcScott · 2023-08-19
Your docs at https://moonbitlang.com/docs/syntax/ are unreadable due to the text and background colour
mijoharas · 2023-08-19
I tried clicking through to find some syntax and got to this page[0] which seems to show things but the text is illegible on a dark background (something to do with picking up a dark mode setting on my device maybe?)
[0] https://moonbitlang.com/docs/syntax/
coder543 · 2023-08-19
In most conversations, TypeScript generally seems to be considered a fairly "modern" language. TypeScript offers a variety of rather advanced type system features, and AssemblyScript is based on it, so by extension, AssemblyScript should be fairly "modern" too.
Based on the limited docs that are available[0], Moonbit appears to be using C++-style "generics" that are just simple template substitutions (no constraints), which is far less "modern" than what TypeScript offers.
Honestly, I don't think imprecise words like "modern" are particularly useful, helpful, or good for discussions like this. "Pattern matching" has been a feature of certain programming languages for decades, so is that truly a "modern" feature?
[0]: https://moonbitlang.com/docs/syntax/#generics