Theorem 8.5 (The chain rule) from "An introduction to manifolds" by Tu - How should I understand the notation $(...)f$ where $f$ is a smooth function? Theorem 8.5
If $F : N \rightarrow M$ and $G : M \rightarrow P$ are smooth maps of manifolds and $p \in N$, then
$$(G \circ F)_{*, p} = G_{*, F(p)} \circ F_{*, p}$$
Proof
Let $X_p \in T_p N$ and $f$ be a smooth function at $G(F(p))$ in $P$. Then:
$$((G \circ F)_* X_p)f = X_p (f \circ G \circ F)$$
$$((G_* \circ F_*) X_p)f = (G_* (F_* X_p))f = (F_* X_p)(f \circ G) = X_p (f \circ G \circ F)$$

I just don't understand this:
As $X_p$ is a tangent vector, why do we write it before the functions (and not after)? What I mean is, should it rather be:
$$(f \circ G \circ F) X_p$$ for example? The same for our function $f$, shouldn't it be
$$f((G \circ F)_* X_p)$$ for example?
It seems like a simple proof, but I just can't understand the notation here, as it's strange to see the argument first and then the function.

One way to define tangent vectors is to say that $T_p M$ is the set of all derivations at $p$ i.e. all linear maps $d: C^{\infty}(M) \longrightarrow \mathbb{R} $ that satisfy the Leibniz rule: $d(fg) = f(p)d(g) + g(p)d(f)$. This is also the definition which Tu is using in his book. So in this context $X_p f$ just means the real number you get when applying the derivation $X_p$ to the function $f$.
