Sign up
Log in
Home
Language tracks
ReasonML track
Exercises
Exercises on the ReasonML track
Join the ReasonML Track
22 exercises to help you master ReasonML
easy
Hello World
The classical introductory exercise. Just say "Hello, World!"
setting up reasonml dev environment
strings
easy
Leap
Given a year, report if it is a leap year.
booleans
integers
easy
Space Age
Given an age in seconds, calculate how old someone is in terms of a given planet's solar years.
enum types
floating point arithmetic
fun expressions
easy
Bob
Bob is a lackadaisical teenager. In conversation, his responses are very limited.
control flow conditionals
pattern recognition
regular expressions
strings
easy
RNA Transcription
Given a DNA strand, return its RNA Complement Transcription.
list map function
lists
variants
easy
Word Count
Given a phrase, count the occurrences of each word in that phrase.
list map function
lists
pattern recognition
regular expressions
variants
easy
Raindrops
Convert a number to a string, the contents of which depend on the number's factors.
fun expressions
list map function
easy
Armstrong Numbers
Determine if a number is an Armstrong number
arrays
folding
algorithms
math
easy
Anagram
Given a word and a list of possible anagrams, select the correct sublist.
filtering
strings
easy
Pangram
Determine if a sentence is a pangram.
strings
easy
Isogram
Determine if a word or phrase is an isogram.
strings
lists
easy
Phone Number
Clean up user-entered phone numbers so that they can be sent SMS messages.
strings
regular expressions
easy
Roman Numerals
Write a function to convert from normal numbers to Roman Numerals.
strings
medium
Binary Search
Implement a binary search algorithm.
arrays
recursion
medium
Run Length Encoding
Implement run-length encoding and decoding.
strings
converting strings to ints
medium
Minesweeper
Add the numbers to a minesweeper board
strings
arrays
medium
Change
Correctly determine change to be given using the least number of coins
integers
recursion
dynamic programming
easy
Acronym
Convert a long phrase to its acronym
regular expressions
strings
easy
All Your Base
Convert a number, represented as a sequence of digits in one base, to any other base.
algorithms
integers
lists
folding
math
easy
Accumulate
Implement the `accumulate` operation, which, given a collection and an operation to perform on each element of the collection, returns a new collection containing the result of applying that operation to each element of the input collection.
algorithms
lists
folding
medium
Allergies
Given a person's allergy score, determine whether or not they're allergic to a given item, and their full list of allergies.
integers
bitwise operations
arrays
lists
medium
Protein Translation
Translate RNA sequences into proteins.
lists
data transform
hash map lookup