🎉 Exercism Research is now launched. Help Exercism, help science and have some fun at research.exercism.io 🎉

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

5 Mentors

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

1,992 Students

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

28 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

The reviews are incredibly helpful because they help me see things that I missed, learn about new ways and sometimes interesting discussions that can add a fun twist to maybe a simple problem.

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 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.
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 Aaron Kuehler

Aaron Kuehler https://aaronkuehler.com

80% Scientist, 20% Artist. Theorist and Practitioner.
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.
Fun. Challenging. Interesting

Community-sourced Emacs Lisp exercises

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

Nucleotide Count
control flow loops
Hello World
Crypto Square
Word Count
control flow conditionals
control flow loops
control flow conditionals

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

Join the Emacs Lisp Track