The "push but I know it's big enough" is proposed for Rust as Vec::push_within_capacity #100486 - they resolve Lisa's concern about Undefined Behaviour by having this return a Result, either Ok if you were right or Err(pushed_item) if the Vec was not in fact big enough, therefore it has no UB, it's entirely safe. This works in Rust because all their objects can be moved.