One other aspect of interpreting: the Lisp interpreter is able to interpret two kinds of entity: humanly readable code, on which we will focus exclusively, and specially processed code, called byte compiled code, which is not humanly readable. Byte compiled code runs faster than humanly readable code.
You can transform humanly readable code into byte compiled code by
running one of the compile commands such as
Byte compiled code is usually stored in a file that ends with a
.elc extension rather than a .el extension. You will
see both kinds of file in the emacs/lisp directory; the files
to read are those with .el extensions.
As a practical matter, for most things you might do to customize or extend Emacs, you do not need to byte compile; and I will not discuss the topic here. See Byte Compilation, for a full description of byte compilation.