# Why is push! still so slow?

**URL:** <https://discourse.julialang.org/t/why-is-push-still-so-slow/112170>\
**Category:** Internals & Design\
**Created:** [March 27, 2024, 7:05am UTC](https://discourse.julialang.org/t/why-is-push-still-so-slow/112170 "2024-03-27T07:05:25Z")\
**Posts on this page:** 1\
**Showing post:** 17

<div class="post-metadata">

**Author:** ![mikmoore](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mikmoore/32/31109_2.png) [@mikmoore](https://discourse.julialang.org/u/mikmoore)\
**Post date:** [March 27, 2024, 3:45pm UTC](https://discourse.julialang.org/t/why-is-push-still-so-slow/112170/17 "2024-03-27T15:45:07Z")

</div>

> [@PatrickHaecker](#):
>
> However, we learn that we should mostly avoid simple mutable structs in performance critical code, so although having an immutable growing vector feels unnatural it’s worth a try

I’ve occasionally been working on [certain RNG operations](https://discourse.julialang.org/t/output-distribution-of-rand-float32-and-rand-float64-thread-2/105184). I recall having a similar experience with mutable RNG states, which had me tinkering with immutable ones instead.

---

_[View the full topic](https://discourse.julialang.org/t/why-is-push-still-so-slow/112170)._
