23,670
students have developed their Haskell skills on Exercism.

Students
23,670
Submissions
367,408
Mentoring Discussions
14,156

The Haskell track needs attention ⚠️

Building

Build

Use your knowledge to build the Haskell track itself

Build Test Runners

Learn More

Create Test Runners that have the single responsibility of taking a solution, running all tests and returning a standardized output.

Next goal: Get Test Runners to Version 2. Haskell is currently utilising a Version 1 Test Runner. Find out more.

Usage statistics

Total Test Runner Runs
300,595
Test Run Pass Rate
27.3% (82112)
Test Run Fail Rate
65.9% (198211)
Test Run Error Rate
6.7% (20272)

Build Analyzers

Learn More

Build an Analyzer for Haskell: Exercism's analyzers automatically assess student's submissions and provide mentor-style commentary.

Next goal: Build an Analyzer. Find out more.

Build Representers

Learn More

Build a Representer: a bit of code that has the single responsibility of taking a solution and returning a normalized representation of it.

Next goal: Build a Representer. Find out more.

Create Practice Exercises

Learn More

Practice Exercises are exercises designed to allow students to solve an arbitrary problem, with the aim of them making use of the concepts they have learned so far.

Next goal: Implement 128 practice exercises. Find out more.

Usage statistics

96 active practice exercises
Started
Attempts
Completions
Mentoring requests
Hello World Hello World
15,422
21,766 (avg. 1.4)
13,280 (86.1%)
6 (0.0%)
Leap Leap
12,285
35,987 (avg. 2.9)
9,628 (78.4%)
2,670 (21.7%)
Space Age Space Age
7,881
25,000 (avg. 3.2)
6,186 (78.5%)
1,343 (17.0%)
Pangram Pangram
5,613
25,260 (avg. 4.5)
4,150 (73.9%)
872 (15.5%)
Bob Bob
5,376
34,145 (avg. 6.4)
4,029 (74.9%)
1,178 (21.9%)
Collatz Conjecture Collatz Conjecture
3,619
17,837 (avg. 4.9)
2,902 (80.2%)
555 (15.3%)
RNA Transcription RNA Transcription
4,380
14,312 (avg. 3.3)
3,685 (84.1%)
1,142 (26.1%)
Nucleotide Count Nucleotide Count
2,982
9,591 (avg. 3.2)
2,158 (72.4%)
585 (19.6%)
Sum of Multiples Sum of Multiples
2,968
9,536 (avg. 3.2)
2,440 (82.2%)
418 (14.1%)
Grains Grains
2,849
9,128 (avg. 3.2)
2,548 (89.4%)
519 (18.2%)
Acronym Acronym
3,191
9,983 (avg. 3.1)
1,708 (53.5%)
163 (5.1%)
Strain Strain
2,485
4,218 (avg. 1.7)
2,181 (87.8%)
198 (8.0%)
Anagram Anagram
2,458
7,349 (avg. 3.0)
1,957 (79.6%)
349 (14.2%)
Clock Clock
1,562
4,883 (avg. 3.1)
1,157 (74.1%)
70 (4.5%)
Crypto Square Crypto Square
1,156
4,290 (avg. 3.7)
780 (67.5%)
74 (6.4%)
Luhn Luhn
1,176
3,996 (avg. 3.4)
883 (75.1%)
72 (6.1%)
Nth Prime Nth Prime
1,281
4,128 (avg. 3.2)
881 (68.8%)
36 (2.8%)
Minesweeper Minesweeper
835
2,443 (avg. 2.9)
480 (57.5%)
42 (5.0%)
Perfect Numbers Perfect Numbers
1,900
4,255 (avg. 2.2)
1,427 (75.1%)
70 (3.7%)
Phone Number Phone Number
1,526
3,647 (avg. 2.4)
1,254 (82.2%)
176 (11.5%)
Secret Handshake Secret Handshake
904
1,900 (avg. 2.1)
718 (79.4%)
22 (2.4%)
Pascal's Triangle Pascal's Triangle
813
1,797 (avg. 2.2)
639 (78.6%)
29 (3.6%)
Binary Search Tree Binary Search Tree
992
3,123 (avg. 3.1)
704 (71.0%)
71 (7.2%)
Queen Attack Queen Attack
713
2,173 (avg. 3.0)
529 (74.2%)
47 (6.6%)
Word Count Word Count
1,063
2,816 (avg. 2.6)
857 (80.6%)
315 (29.6%)
Wordy Wordy
468
1,404 (avg. 3.0)
273 (58.3%)
29 (6.2%)
Hamming Hamming
2,311
5,063 (avg. 2.2)
1,989 (86.1%)
448 (19.4%)
Robot Simulator Robot Simulator
988
2,845 (avg. 2.9)
801 (81.1%)
73 (7.4%)
Twelve Days Twelve Days
664
1,360 (avg. 2.0)
492 (74.1%)
12 (1.8%)
Saddle Points Saddle Points
530
1,118 (avg. 2.1)
329 (62.1%)
9 (1.7%)
Food Chain Food Chain
344
565 (avg. 1.6)
223 (64.8%)
8 (2.3%)
OCR Numbers OCR Numbers
394
759 (avg. 1.9)
279 (70.8%)
15 (3.8%)
Change Change
424
1,213 (avg. 2.9)
182 (42.9%)
12 (2.8%)
Go Counting Go Counting
270
331 (avg. 1.2)
97 (35.9%)
5 (1.9%)
Resistor Color Duo Resistor Color Duo
618
861 (avg. 1.4)
511 (82.7%)
12 (1.9%)
D&D Character D&D Character
445
994 (avg. 2.2)
252 (56.6%)
9 (2.0%)
Resistor Color Trio Resistor Color Trio
457
1,092 (avg. 2.4)
327 (71.6%)
9 (2.0%)
Run-Length Encoding Run-Length Encoding
1,080
2,149 (avg. 2.0)
863 (79.9%)
43 (4.0%)
House House
394
520 (avg. 1.3)
282 (71.6%)
15 (3.8%)
Proverb Proverb
379
782 (avg. 2.1)
247 (65.2%)
2 (0.5%)
Simple Linked List Simple Linked List
1,038
2,124 (avg. 2.0)
827 (79.7%)
86 (8.3%)
Custom Set Custom Set
401
1,222 (avg. 3.0)
237 (59.1%)
12 (3.0%)
Bowling Bowling
251
570 (avg. 2.3)
102 (40.6%)
4 (1.6%)
ISBN Verifier ISBN Verifier
761
1,612 (avg. 2.1)
589 (77.4%)
20 (2.6%)
Protein Translation Protein Translation
559
1,565 (avg. 2.8)
408 (73.0%)
16 (2.9%)
Yacht Yacht
604
2,945 (avg. 4.9)
368 (60.9%)
6 (1.0%)
Pythagorean Triplet Pythagorean Triplet
535
1,151 (avg. 2.2)
368 (68.8%)
13 (2.4%)
Rotational Cipher Rotational Cipher
328
472 (avg. 1.4)
250 (76.2%)
10 (3.0%)
Spiral Matrix Spiral Matrix
258
340 (avg. 1.3)
160 (62.0%)
2 (0.8%)
Alphametics Alphametics
213
169 (avg. 0.8)
78 (36.6%)
1 (0.5%)
Beer Song Beer Song
810
1,556 (avg. 1.9)
691 (85.3%)
130 (16.0%)
List Ops List Ops
812
1,816 (avg. 2.2)
648 (79.8%)
97 (11.9%)
Matrix Matrix
446
739 (avg. 1.7)
318 (71.3%)
31 (7.0%)
Binary Search Binary Search
406
673 (avg. 1.7)
214 (52.7%)
2 (0.5%)
Parallel Letter Frequency Parallel Letter Frequency
299
419 (avg. 1.4)
150 (50.2%)
17 (5.7%)
Transpose Transpose
253
427 (avg. 1.7)
133 (52.6%)
2 (0.8%)
Poker Poker
225
231 (avg. 1.0)
73 (32.4%)
2 (0.9%)
Lens Person Lens Person
303
554 (avg. 1.8)
144 (47.5%)
13 (4.3%)
Triangle Triangle
839
1,318 (avg. 1.6)
710 (84.6%)
49 (5.8%)
Meetup Meetup
519
791 (avg. 1.5)
394 (75.9%)
64 (12.3%)
Sieve Sieve
381
740 (avg. 1.9)
282 (74.0%)
10 (2.6%)
Palindrome Products Palindrome Products
247
472 (avg. 1.9)
149 (60.3%)
7 (2.8%)
Simple Cipher Simple Cipher
293
532 (avg. 1.8)
170 (58.0%)
13 (4.4%)
Connect Connect
182
158 (avg. 0.9)
83 (45.6%)
3 (1.6%)
POV POV
209
353 (avg. 1.7)
86 (41.1%)
6 (2.9%)
Difference of Squares Difference of Squares
1,705
4,169 (avg. 2.4)
1,454 (85.3%)
95 (5.6%)
Raindrops Raindrops
908
1,562 (avg. 1.7)
774 (85.2%)
79 (8.7%)
Kindergarten Garden Kindergarten Garden
623
937 (avg. 1.5)
456 (73.2%)
23 (3.7%)
All Your Base All Your Base
496
1,027 (avg. 2.1)
329 (66.3%)
12 (2.4%)
Allergies Allergies
504
713 (avg. 1.4)
413 (81.9%)
54 (10.7%)
Series Series
467
1,097 (avg. 2.3)
321 (68.7%)
15 (3.2%)
Bank Account Bank Account
352
578 (avg. 1.6)
234 (66.5%)
52 (14.8%)
Rail Fence Cipher Rail Fence Cipher
199
218 (avg. 1.1)
116 (58.3%)
4 (2.0%)
Sublist Sublist
977
1,637 (avg. 1.7)
888 (90.9%)
219 (22.4%)
SGF Parsing SGF Parsing
175
283 (avg. 1.6)
85 (48.6%)
4 (2.3%)
Zipper Zipper
238
375 (avg. 1.6)
132 (55.5%)
6 (2.5%)
Armstrong Numbers Armstrong Numbers
1,048
3,291 (avg. 3.1)
745 (71.1%)
20 (1.9%)
ETL ETL
1,004
1,374 (avg. 1.4)
849 (84.6%)
91 (9.1%)
Scrabble Score Scrabble Score
705
1,191 (avg. 1.7)
613 (87.0%)
80 (11.3%)
Roman Numerals Roman Numerals
559
828 (avg. 1.5)
443 (79.2%)
69 (12.3%)
Atbash Cipher Atbash Cipher
397
657 (avg. 1.7)
320 (80.6%)
59 (14.9%)
Pig Latin Pig Latin
192
223 (avg. 1.2)
129 (67.2%)
6 (3.1%)
Robot Name Robot Name
440
725 (avg. 1.6)
305 (69.3%)
106 (24.1%)
Say Say
198
271 (avg. 1.4)
120 (60.6%)
5 (2.5%)
Dominoes Dominoes
232
397 (avg. 1.7)
91 (39.2%)
4 (1.7%)
Accumulate Accumulate
1,887
2,676 (avg. 1.4)
1,771 (93.9%)
340 (18.0%)
Complex Numbers Complex Numbers
524
1,352 (avg. 2.6)
371 (70.8%)
3 (0.6%)
Largest Series Product Largest Series Product
561
1,145 (avg. 2.0)
414 (73.8%)
30 (5.3%)
Prime Factors Prime Factors
579
816 (avg. 1.4)
454 (78.4%)
40 (6.9%)
Matching Brackets Matching Brackets
476
938 (avg. 2.0)
302 (63.4%)
15 (3.2%)
Linked List Linked List
363
616 (avg. 1.7)
162 (44.6%)
18 (5.0%)
Zebra Puzzle Zebra Puzzle
199
143 (avg. 0.7)
94 (47.2%)
3 (1.5%)
Forth Forth
270
535 (avg. 2.0)
95 (35.2%)
5 (1.9%)
Diamond Diamond
778
1,105 (avg. 1.4)
525 (67.5%)
19 (2.4%)
Grade School Grade School
1,483
2,335 (avg. 1.6)
1,087 (73.3%)
156 (10.5%)
Isogram Isogram
1,095
1,887 (avg. 1.7)
848 (77.4%)
35 (3.2%)
5 deprecated practice exercises
Started
Attempts
Completions
Mentoring requests
Binary Binary
141
274 (avg. 1.9)
137 (97.2%)
65 (46.1%)
Gigasecond Gigasecond
536
812 (avg. 1.5)
532 (99.3%)
116 (21.6%)
Hexadecimal Hexadecimal
86
152 (avg. 1.8)
83 (96.5%)
33 (38.4%)
Octal Octal
57
92 (avg. 1.6)
54 (94.7%)
19 (33.3%)
Trinary Trinary
54
82 (avg. 1.5)
51 (94.4%)
15 (27.8%)
32 unimplemented practice exercises
Affine Cipher Affine Cipher
Book Store Book Store
Bottle Song Bottle Song
Circular Buffer Circular Buffer
DOT DSL DOT DSL
Darts Darts
Error Handling Error Handling
Flatten Array Flatten Array
Grep Grep
Hangman Hangman
High Scores High Scores
Killer Sudoku Helper Killer Sudoku Helper
Knapsack Knapsack
Ledger Ledger
Markdown Markdown
Micro Blog Micro Blog
PaaS I/O PaaS I/O
REST API REST API
Rational Numbers Rational Numbers
React React
Rectangles Rectangles
Reverse String Reverse String
Satellite Satellite
Scale Generator Scale Generator
Square Root Square Root
State of Tic-Tac-Toe State of Tic-Tac-Toe
Tournament Tournament
Tree Building Tree Building
Two Bucket Two Bucket
Two-Fer Two-Fer
Variable Length Quantity Variable Length Quantity
Word Search Word Search
1 foregone practice exercise
Resistor Color Resistor Color