My favourite way of thinking about these operations comes from category theory: * addition: the cardinality of the disjoint union of two sets * multiplication: the cardinality of the direct product of two sets * exponentiation: a^b is the cardinality of the set of maps from B to A where B is a set of cardinality b and A is a set of cardinality a
That is exactly how I explained multiplication to my 5 years old, right after getting him into programming by playing with profunctor optics
I learned multiplication from counting squares of dots.
But agreed: I learned about exponentiation first via repeated multiplication.