Most of the GNU Emacs integrated environment is written in the programming language called Emacs Lisp. The code written in this programming language is the software (the sets of instructions) that tell the computer what to do when you give it commands. Emacs is designed so that you can write new code in Emacs Lisp and easily install it as an extension to the editor.
This introduction to Emacs Lisp is designed to get you started: to guide you in learning the fundamentals of programming, and more importantly, to show you how you can teach yourself to go further.
This manual is available online for free at gnu.org. This manual is printed in grayscale.