Right.
> In other words its rewrite system is so powerful that lisp can be naturally threaded into it.
a) lots of systems (turing machines, ...) can implement Lisp.
b) it's not that natural in Mathematica. The natural part comes from its symbolic nature. But if you look at the documentation and read about how they implement lexical closures, it's all vague and not that pretty. The implementation actually needs to rewrite variable names, IIRC.
I wonder why their documentation is so vague? They don't want independent implementations of their language?