Complex multiplication can be visualized as rotating and scaling the complex plane. So, besides thinking of a complex number $z$ as a point, we can think of it as encoding a transformation composed of a rotation and scaling.

Recall associativity:

$$z \cdot (q \cdot c) = (z \cdot q) \cdot c$$

If we think of $z$ and $q$ as transformations, and $c$ as a point being transformed, then this reads:

$$z(q(c)) = (z \cdot q)(c)$$

That is, starting at a point $c$ and applying the transformation $q$ and then the transformation $z$ is the same thing as applying the transformation "$z \cdot q$" to $c$. Thus $z \cdot q$ is the transformation "do $q$ and then do $z$", which is to say, the composition of $z$ and $q$.

So what associativity tells us is really that $z\cdot q = z \circ q$

Technically speaking, we've been a little loose here. A complex number $z$ does not quite encode a transformation; the operator $z\cdot$ does. If we make this distinction, we are being correct and are able to better formalize the connection between associativity and composition, but we lose nice the nice conceptual interpretation that "$z\cdot q = z\circ q$".

$z\cdot$ is the "multiply by $z$ function". In order words:
1. $z\cdot = x \mapsto z\cdot x$
2. $(z\cdot)(x) = z\cdot x$
3. $z\cdot$ is a function $f$ defined by $f(x) = z\cdot x$.

Under this interpretation, associativity looks like the following:

\begin{align*} z \cdot (q \cdot c) &= (z \cdot q) \cdot c \\ {z\cdot}({q\cdot}(c)) &= ((z \cdot q)\cdot)(c) \\ ({z\cdot} \circ {q\cdot})(c) &= ((z \cdot q)\cdot)(c) \\ \phantom{\hspace{30pt} \text{since c is arbitrary}} {z\cdot} \circ {q\cdot} &= { (z\cdot q)\cdot } \hspace{30pt} \text{since c is arbitrary} \end{align*}

Which reads similarly, but not quite the same, as our previous (not-quite correct) conclusion that multiplication is composition. Instead, this says that multiplication gives a result whose associated transformation is the composition of the associated transformations of the factors.

While this interpretation is more correct, it is ugly. And if you really stare at it long enough, it basically says the same thing as our first interpretation—just with more rigor.

Point being, this is the correct version, but don't remember it. Remember the other one.

And now we can generalize! If we tried to generalize with the not-quite-correct interpretation, we would say that $\star$ is associative iff $a\star b = a\circ b$. But what is $a\circ b$? It's something loose and poorly-defined that depends on context. Now we can state a nice unamibuous second interpretation of assocativity, that:

$$(a\star) \circ (b\star) = (a\star b)\star$$

In fact, if we tried to get a formal deinition, we would just end up with $z \circ q = {z\cdot} \circ {q\cdot}$. This is because if we would want $z \circ q$ to represent "apply $q$ then $z$". Thus, we would define

\begin{align*} z \circ q &:= x \mapsto z(q(x)) \\ &\phantom{:}= x \mapsto z\cdot (q\cdot x) \\ &\phantom{:}= {z\cdot} \circ {q\cdot} \end{align*}