Mara Bos

blog.m-ou.se · Personal blog · on HN since 2020

Mara Bos is a Rust library team lead who writes about Rust internals, lifetimes, concurrency, and the project's governance.

What HN saysHN commenters link her post that Rust is not a company to explain its volunteer-driven pace, and discuss her pieces on temporary lifetimes.
22HN people shared it
7linked it in comments
18stories submitted
495story points
2 months agolast shared
2020people per year2026

Most-shared posts

  1. 1
    Do we need a “Rust Standard”?
    5 people · 40 points · first shared 2022 · 46 comments on HN
  2. 2
    Writing Python inside Rust
    4 people · 192 points · first shared 2020 · 85 comments on HN
  3. 3
    Rust Temporary Lifetimes and "Super Let"
    4 people · 6 points · first shared 2023 · discussion on HN
  4. 4
    Converting Integers to Floats Using Hyperfocus
    3 people · 115 points · first shared 2022 · 9 comments on HN
  5. 5
    Rust is not a company
    2 people · 102 points · first shared 2021 · 80 comments on HN
  6. 6
    Comparing Rust's and C++'s Concurrency Library
    2 people · 32 points · first shared 2022 · discussion on HN
  7. 7
  8. 8
    Writing Python inside your Rust code – Part 3
    1 people · 2 points · first shared 2020 · discussion on HN
  9. 9
    Writing Python inside your Rust code – Part 2
    1 people · 2 points · first shared 2020 · discussion on HN
  10. 10
    Writing Python inside your Rust code – Part 4
    1 people · 1 points · first shared 2020 · discussion on HN

What HN people wrote when they linked it

aw1621107 · 2026-08-20
Interesting, thanks for the links! I'm curious as to how many of the apparent issues are attributable to lifetime extension specifically as opposed to something else like async-related deadlocks as mentioned in the parent to the first linked comment (which I feel I've heard much more about), especially after the Rust 2024 changes. That being said, after a bit more searching I found this 2023 blog from one of the Rust devs [0] which supports the "widespread" description at the time: > One very common problem is deadlocks (or panics, for ref-cell) when mutex locks occur in a match scrutinee so I think we can chalk this up to me being insufficiently well-read. I think it would be interesting to see to what extent the Rust 2024 changes alleviated the problem since it only changed if let, but I haven't found that information (yet). There's also this related work [1], but I think the scope of that is rather larger. > Interestingly, Mojo might avoid some or all of that, by having some destructors be implicit, and some destructors be explicit, [] , requiring users to write the destructors manually. There's some relevant exploration being done in Rust that in principle could enable linear types [2], though obviously it remains to be seen to what extent this work will pan out. [0]: https://smallcultfollowing.com/babysteps/blog/2023/03/15/temporary-lif… [1]: https://blog.m-ou.se/super-let/ [2]: https://github.com/rust-lang/goals/blob/main/src/2026/move-trait.md
eesmith · 2023-06-20
> 30 to 80 millions LOC compiled I figured it was because "line of code" is not all that meaningful, and not worth specifying more precisely than that. Does it include comments? Is it after macro expansion? What about \ continuations? Does a bare "}" on its own count as a line of code? BTW, how many LOC does Crater run in a full test, and how long does it take/how expensive is a run? I failed to find that information. > The C++ developers don't actually have direct access to other people's code I don't know what you mean by that. They certainly have access to public source code, just like Rust developers do. (Chromium, LLVM, Boost are mentioned in https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1161r2.html ). It would seem very odd if Microsoft's representatives had no idea how changes to C++ would affect internal Microsoft code. I strongly suspect VC++ changes/extensions are tested against in-house Microsoft code bases before making their way to the standard, because it makes no sense to undermine your own systems. For the same reason, I suspect proposed changes are tested internally at Microsoft. And from papers like https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p2126r0.pdf I know there is in-house experience of proprietary code bases guiding how the C++ standard changes. > Did the documents you reviewed make you think the hidden C++ is so much different than the piles of it that are available in a public code search? Was that the message you…
hitekker · 2023-02-15
Blaming the followers for not reading the docs is an easy excuse, when the real problem is that the leaders have failed to define Python. The PSF needs to decide what precisely Python is and what it isn't among themselves. Because they did not do so, they can't tell if something is a bug or intentional. See this entire thread as proof. In lieu of a formal definition, the maintainers resort to a hodgepodge of user docs, PEPs, mailing lists, and the "reference implementation". Worries about making that "reference implementation" more complex stymied Python's development. There's been flamewars about this topic with the PSF and their apologists. On that note, Rust encountered a similar problem of bad decision-making by maintainers, who also were opposed to specification. They have ejected those maintainers and replaced them with ones who understand the need for a formal definition of their language. https://blog.m-ou.se/rust-standard/
epage · 2026-06-24
An RFC was recently merged to unblock this: https://github.com/rust-lang/rfcs/pull/3963 The implementation on this has started. Something to keep in mind is https://blog.m-ou.se/rust-is-not-a-company/. Rust is mostly driven by volunteers working on what they find interesting. Boring/uninteresting tasks depend on funding, a warm body to accept the funding, and a reviewer.
dochtman · 2022-11-01
In my understanding it would be hard to make the case that Rust actually has more undefined behavior than C -- most kinds of undefined behavior in C have been carefully avoided in Rust, although, yes, there is no piece of paper ratified by a bunch of national technology institutes that describes Rust. See also this recent blog post: https://blog.m-ou.se/rust-standard/
JeremyBanks · 2020-09-19
Hmm. Some folks have hacked the Rust macro system to get whitespace-sensitivity for embedded Python. https://blog.m-ou.se/writing-python-inside-rust-1/ I wonder how much of the CoffeeScript syntax you could pack in there...
thesuperbigfrog · 2023-12-18
Rust needs a language standard: https://blog.m-ou.se/rust-standard/ https://rust-lang.github.io/rfcs/3355-rust-spec.html https://github.com/rust-lang/rfcs/pull/3355 There are many organizations and industries that will not adopt Rust until it has a standard. C, C++, C#, and even JavaScript (ECMAScript) have language standards. Why shouldn't Rust have one too? C: https://www.iso.org/standard/74528.html C++: https://isocpp.org/std/the-standard C#: https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/lan… JavaScript / ECMAScript: https://ecma-international.org/publications-and-standards/standards/ec…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close