Another useful datatype is a rope[0]. It is useful for using immutable/shared pieces that can build up to other longer compositions. In particular, an operation such as concatenation can be O(1) since that's matches the representation of a rope.
https://docs.google.com/document/d/1o-MJPAddpfBfDZCkIHNKbMiM...
*Saying this mostly with the intent of being proved wrong ;) kxcd://386
Looking at the reference[0] given at the very end of the document, wouldn't the word "sometimes" be more appropriate?
[0]: https://mrale.ph/blog/2016/11/23/making-less-dart-faster.htm...