Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Except the bug was filed in 2008. Back then, Rust was Graydon Hoare's personal project that Mozilla wouldn't start funding until a year later. Rust was written in OCaml and the famed borrow checker wouldn't be in place until 2010. The first public release was v0.1 in 2012 and the first stable release 1.0 wouldn't happen till 2015. The language was very different back then with sigils, garbage collection and green threading as language features. So this bug was already bugging people when Rust was just an embryo that was still years away from birth.

Now even if we neglect the timeline, Rust only guarantees memory safety. If TB is deleting mails on the server too, then the corruption is happening over IMAP connections as well. Does that sound like a memory safety bug to you? Perhaps it is. But how do we eliminate the possibility of a logical bug that Rust won't protect you against, when nobody has any clue even now? And all that aside, if you're going to rewrite it in Rust, you might as well start a new project in Rust instead of porting an old design that may potentially contain a language-agnostic logical Heisenbug.

I'm not trying to be hostile here. I started using Rust in 2013 (I have 12 years of experience in a 10 year old language, and a bunch of repos that I can't compile anymore unless I compile the compiler from old commits somehow!). I wouldn't use C or C++ for any of these applications - I simply don't have enough competence to avoid the kind of bugs that Rust protects me from (despite being a hardware engineer with more knowledge about memory management than about type system theory). Despite all that, statements like this will only cause an unwanted backlash against Rust. Not that you're entirely wrong, but some people are so offended by such suggestions for reasons that are still under investigation, that they start a crusade against Rust [1].

[1] https://fosstodon.org/@goku12/114077011555069124



The op is being facetious


Sometimes, treating a facetious/sarcastic request seriously helps disarm the facetiousness. Other times, it does not.


English is my first language but I don’t understand this use of “disarm”.


You counter the facetiousness in a way it stops spreading and possibly even spark a constructive discussion is how I understand it (ESL though). I certainly observed this phenomenon myself (although as the person being facetious, I often feel like "I was joking, I actually agree, that's indeed what I was actually implying, but good you made it clear and explicit I guess")

I guess you'd disarm the person being facecious rather than the facetiousness, like you'd disarm someone about to cast you a magic spell.


> I guess you'd disarm the person being facecious rather than the facetiousness

No, you disarm the facetiousness, the same way you'd disarm a trap. Disarming the person wouldn't make sense.

https://en.wiktionary.org/wiki/disarm

> 2. (transitive) To deprive of the means or the disposition to harm; to render harmless or innocuous.

> [quotations] to disarm a man's wrath


Interesting, in French, you can both disarm someone or a gun.

https://fr.m.wiktionary.org/wiki/d%C3%A9sarmer


You can disarm a person in English, but you can't disarm them of their mood.


In French neither, I took this as a figure of speech where facetiousness is likened to a weapon.


At this point, answering to a "rewrite it in Rust" comment which doesn't go into details is a cultural faux pas, you just smile or roll your eyes and move on :-)


I really can't tell them apart. My fault. But people also get too passionate about it sometimes.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: