notation question - vector field and function on manifold So I'm trying to learn Riemannian geometry on my own... probably not a realistic goal!
But anyway, for now I'm stuck on understanding part of this passage:

A vector field $X$ on a $C^{\infty}$ manifold $M$ is a smooth assignment of a tangent vector $X_p \in T_p M$ where smooth is defined to mean that for all $f \in C^{\infty}$,
  the function $Xf : M \to \mathbb{R}$ defined by
  
  
*
  
*$M \to \mathbb{R}$
  
*$p \mapsto  (Xf)(p) := X_p(f)$
  
  
  is infinitely differentiable.  

This is from Isham, Modern Differential Geometry for Physicists 2ed p.97.
So I understand that $f$ is a smooth function defined on the manifold, that $X$ is a vector field assembled from the tangent space at each point, and probably smoothly changing as $p$ changes. The part I don't understand is this:

$p \mapsto  (Xf)(p) := X_p(f)$

It's a mapping from $p$ to something, but can anyone explain in words 
what the right hand side means?  What is $(Xf)$ ?   And what is $X(f)$ ?
 A: Let $p\in M$, and let $T_pM$ be the tangent space of $M$ at $p$. There are several equivalent definitions of the tangent space, but it seems to me that the one intended here is this definition, where a tangent vector  $X_p\in T_pM$ is a derivation on the space of smooth functions $f:M\to \mathbb{R}$. Specifically, $X_p$ eats smooth functions $f:M\to\mathbb{R}$ and outputs real numbers $X_p(f)$, it does so linearly in $f$, and finally it satisfies this formulation of the chain rule:
$$X_p(fg)=X_p(f)g(p)+f(p)X_p(g).$$
The subscript $p$ on $X_p$ is purely a notational reminder that $X_p$ "lives at" $p$.
We can now define the notion of a vector field on $M$, denoted by a letter $X$, which consists of a choice of tangent vector $X_p$ at each point $p$, and this vector field $X$, i.e. this assignment $p\mapsto X_p$, is smooth when it satisfies the property you're asking about: for any smooth function $f:M\to\mathbb{R}$, the function "$Xf$" from $M$ to $\mathbb{R}$ defined by sending $p\in M$ to $X_p(f)\in\mathbb{R}$ must be smooth as well. Note that this explains the author's "in-line" definition of $Xf$, 
$$p\mapsto (Xf)(p):=X_p(f),$$
i.e. "$Xf$ is the function sending $p$ to $(Xf)(p)$, where $(Xf)(p)$ is the real number $X_p(f)$".
