Emacs Lisp

Join the Emacs Lisp Track
Emacs Lisp is the extension language of the Emacs text editor. You can easily create you own extensions, which include preference files, but also full-fledged applications that use Emacs as a running environment in a fully integrated way.
Join the Emacs Lisp Track
Track mentors

4 Mentors

Our mentors are friendly, experienced Emacs Lisp developers who will help teach you new techniques and tricks.
Track students

953 Students

Join hundreds of students who have enjoyed learning and improving their skills by taking this track.
Track exercises

27 Exercises

Hundreds of hours have gone into making these exercises fun, useful, and challenging to help you enjoy learning.

About Emacs Lisp

(defun hello (&optional name)
  "Say hello, optionally to NAME."
  (let ((greetee (or name "World")))
    (concat "Hello, " greetee "!")))


Emacs Lisp is the language at the core of Emacs, the iconic text editor that is at the beginning of the Free Software movement. Emacs is made of more than a million lines of Emacs Lisp, and all the applications that run inside Emacs (IDEs for various programming languages, games, planners, etc.) are written in Emacs Lisp. User preferences are also lists of Emacs Lisp expressions.

Knowing Emacs Lisp is the first step into Lisp, the second oldest programming language still used (just turned 60 in 2018) and also a language that still influences so many other programming languages.

Quoting the creator of Emacs: "Multics Emacs proved to be a great success — programming new editing commands was so convenient that even the secretaries in his office started learning how to use it. They used a manual someone had written which showed how to extend Emacs, but didn't say it was a programming. So the secretaries, who believed they couldn't do programming, weren't scared off. They read the manual, discovered they could do useful things and they learned to program."

Join the Emacs Lisp track

Exercism is a great website

What I like about it is that I am able to solve the challenges in a TDD way working in a environment that I am familiar (my own PC not a browser IDE) and the cherry on the top of the cake is that I have access to code reviews.

Relaxed. Encouraging. Supportive.

Meet the Emacs Lisp Track mentors

Once you join the Emacs Lisp language track, you will receive support and feedback from our team of mentors. Here are the bios of a few of the mentors of this track.

Avatar of Yilkal Argaw

Yilkal Argaw https://github.com/yilkalargaw

An enthusiastic programmer who enjoys to explore various aspects of the computer industry. Worked on areas ranging from ASIC & FPGA based hardware design to Software Development in softwares like ruby, C, C++, perl,scheme, common-lisp and rust.
Avatar of Marcos Almeida

Marcos Almeida https://github.com/maurelio1234

Typescript and C# during the day, Elisp and other weird things during the night. Currently fullstack developer, worked on AI/Software engineering research in the past.
Avatar of Gabriele Lana

Gabriele Lana https://github.com/gabrielelana

Software craftsman, clean code disciple, Elixir/Erlang, Elm, Ruby, Rust, JavaScript, quantified self geek, Emacs all the things, 20 years on the field and still love it.
Avatar of Sean Allred

Sean Allred Homepage

I love Lisp for its simplicity and utility -- and bending Emacs to my whims! I've created popular internet-based packages like Magithub and SX for StackExchange.
Fun. Challenging. Interesting

Community-sourced Emacs Lisp exercises

These are a few of the 27 exercises on the Emacs Lisp track. You can see all the exercises here.

control flow conditionals
Word Count
control flow conditionals
control flow loops
Armstrong Numbers
control flow conditionals
control flow loops
Run Length Encoding
control flow loops

Get started with the Emacs Lisp track. As with everything on Exercism, it's 100% free!

Join the Emacs Lisp Track