# One dimention array of objects.
class AbstractArrayRead[E]
-special IndexedCollectionRead[E]
+special SequenceRead[E]
# The current length
redef readable var _length: Int = 0
# Resizeable one dimention array of objects.
class AbstractArray[E]
special AbstractArrayRead[E]
-special IndexedCollection[E]
+special Sequence[E]
fun enlarge(cap: Int) is abstract
redef fun push(item) do add(item)