Lisp Flavoured Erlang (LFE)

When you're logged in, you can say exercism fetch lfe to get the next available exercise on the track.

Every time you submit a solution to an exercise, you will get the next in line the next time you fetch.

If you want to try a specific exercise, you can always fetch it directly (commands are listed below).

The exercises are ordered roughly in order of difficulty, but it's a bit haphazard.

Available Exercises

  • Leap Given a year, report if it is a leap year.
  • Rna Transcription Given a DNA strand, return its RNA complement (per RNA transcription).
  • Bob Bob is a lackadaisical teenager. In conversation, his responses are very limited.
  • Sum Of Multiples Given a number, find the sum of all the multiples of particular numbers up to but not including that number.
  • Strain Implement the `keep` and `discard` operation on collections. Given a collection and a predicate on the collection's elements, `keep` returns a new collection containing those elements where the predicate is true, while `discard` returns a new collection containing those elements where the predicate is false.
  • Hamming Calculate the Hamming difference between two DNA strands.
  • Space Age Given an age in seconds, calculate how old someone is in terms of a given planet's solar years.
  • Grains Calculate the number of grains of wheat on a chessboard given that the number on each square doubles.
  • Anagram Given a word and a list of possible anagrams, select the correct sublist.
  • Nucleotide Count Given a DNA string, compute how many times each nucleotide occurs in the string.
  • Atbash Cipher Create an implementation of the atbash cipher, an ancient encryption system created in the Middle East.
  • Phone Number Clean up user-entered phone numbers so that they can be sent SMS messages.
  • Robot Simulator Write a robot simulator.
  • Grade School Given students' names along with the grade that they are in, create a roster for the school
  • Binary Convert a binary number, represented as a string (e.g. '101010'), to its decimal equivalent using first principles
  • Word Count Given a phrase, count the occurrences of each word in that phrase.
  • Circular Buffer A data structure that uses a single, fixed-size buffer as if it were connected end-to-end.
  • Etl We are going to do the `Transform` step of an Extract-Transform-Load.
  • Clock Implement a clock that handles times without dates.
  • Gigasecond Calculate the moment when someone has lived for 10^9 seconds.
  • Beer Song Produce the lyrics to that beloved classic, that field-trip favorite: 99 Bottles of Beer on the Wall.
  • Difference Of Squares Find the difference between the square of the sum and the sum of the squares of the first N natural numbers.
  • Allergies Given a person's allergy score, determine whether or not they're allergic to a given item, and their full list of allergies.
  • Bank Account Simulate a bank account supporting opening/closing, withdraws, and deposits of money. Watch out for concurrent transactions!
  • Luhn Given a number determine whether or not it is valid per the Luhn formula.
  • Series Given a string of digits, output all the contiguous substrings of length `n` in that string.
  • Trinary Convert a trinary number, represented as a string (e.g. '102012'), to its decimal equivalent using first principles.
  • Largest Series Product Given a string of digits, calculate the largest product for a contiguous substring of digits of length n.
  • Meetup Calculate the date of meetups.
  • Parallel Letter Frequency Count the frequency of letters in texts using parallel computation.