There's a proposal for immutable records and tuples: https://github.com/tc39/proposal-record-tuple
Theoretically they would use structural sharing for their implementation which should reduce the overhead of creating a whole new array of objects like that