Today I learnt that Emacs defines a ring structure using just a fixed size array, to give you the convenience of circular structures and dynamically sized arrays! https://www.gnu.org/software/emacs/manual/html_node/elisp/Rings.html