you are viewing a single comment's thread
view the rest of the comments
[–] 146 points 11 months ago (7 children)

Just because you’re writing in a shiny new language that never misses an opportunity to crow about how memory safe it is, doesn’t mean that you can skip due diligence on input validation, checking every return value and writing exception handlers for even the most unlikely of situations.

Lol

  • source
  • hideshow 7 child comments
  • [–] 46 points 11 months ago (5 children)

    But at least it wasn't a memory leak!!! 😭😭😭

  • source
  • parent
  • hideshow 5 child comments
  • [–] 24 points 11 months ago (4 children)

    Memory leaks are logic errors, Rust can't really prevent you from leaking memory.

  • source
  • parent
  • hideshow 4 child comments
  • [–] 19 points 11 months ago (2 children)

    It's really hard to do without Rc (or similar) or unsafe.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 29 points 11 months ago* (1 child)

    You can leak memory in perfectly safe Rust, because it is not a bug per se, an example is by using Box::leak

    Preventing memory leaks was never in the intentions of Rust. What it tries to safeguard you from are Memory Safety bugs like the infamous and common double free.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 3 points 11 months ago

    And it still cleans up once the ownership model indicates it can be cleaned up. That does not ensure memory is never leaked, but it is equivalent to destructors running automatically when using unique ptr or shared ptr without cycles in C++, which avoids at least a portion of possible memory leaks.

  • source
  • parent
  • [–] 8 points 11 months ago

    Some memory leaks are logic errors, and this is honestly the irony of modern dynamic languages. I have actually gotten into the argument in interviews before - it is arguably safer (and better) to work from maximal static memory allocations with memory safe data objects than it is to implement dynamic memory algorithms just because they are fun coding problems.

  • source
  • parent