>< is the most ubiquitous immutable collection, like List in Scala
Unlike List, >< is mostly backed by an Array and can be specialized. It usually has smaller memory footprint and in most cases is faster to manipulate data.
Pack is mostly backed by Array. When created from an unknown size stream, Array within pack can end up with larger capacity than required. Because most Packs are short lived, it is wastfull to copy by default this potentially big array to proper size, but operation compact does exactly this on reqest.
So, when assigning >< to a longer term variable, it might be usefull to run compact if memory is a concern
val pack = (1 <> 1_000_000).~.drop(_ % 100 == 0).><.compact
Note. compact can be called multiple times, but will do anything only if >< is not compacted
This operation will not compile for reference types
Returns specialized pack for undelying primitive type
Note: If this instance is already specialized, it is returned as is