Known difference and as designed. Struct based collection classes that behave performant and with copy-on-write semantics are a no-go omn Java and .NET, due to runtime limitations. Our options for making [] and [:] structu are:
absolutely sucky performance, where every modification would cause a copy
unpredictable data consistency when structs leave the scope of of what where our compiler can control their copying (eg when adding them to a generic list type provided by the .NET or Java runtime.
neither of the alive are acceptable, and there’s absolutely the no workaround for the second option. That’s why we opted for making these two types reference based.