Lisp Flavoured Erlang (AKA LFE) is a lisp syntax front-end to the Erlang compiler. Code produced with it is compatible with "normal" Erlang code. LFE is a (proper) Lisp based on the features and limitations of the Erlang VM.

LFE has many origins, depending upon whether you're looking at Lisp, Erlang, or LFE-proper. The LFE community of contributors embraces all of these and more.

LFE is a Lisp-2. In Lisp-2, the rules for evaluation in the functional position of a form are distinct from those for evaluation in the argument positions of the form. In addition, LFE not only has separate value and function space but it also allows multiple function definitions for the same name. Like Erlang does.

Help us explain this better! File a GitHub issue at if you have suggestions, or submit a patch with improvements to the file.

Try It!

If you've downloaded the command-line client and have LFE installed on your machine, then go ahead and fetch the first problem.

exercism fetch lfe

In order to be able to submit your solution, you'll need to configure the client with your Exercism API key.

exercism configure --key=YOUR_EXERCISM_KEY

When you've written a solution, submit it to the site. You'll have to configure the command-line client with your exercism API key before you can submit.

exercism submit PATH_TO_FILE