14,907
students have developed their Scala skills on Exercism.

Students
14,907
Submissions
115,141
Mentoring Discussions
6,702

The Scala track needs attention ⚠️

Building

Build

Use your knowledge to build the Scala 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.

Usage statistics

Total Test Runner Runs
90,535
Test Run Pass Rate
34.7% (31444)
Test Run Fail Rate
14.3% (12949)
Test Run Error Rate
51.0% (46142)

Build Analyzers

Learn More

Build an Analyzer for Scala: 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 130 practice exercises. Find out more.

Usage statistics

91 active practice exercises
Started
Attempts
Completions
Mentoring requests
Hello World Hello World
8,888
11,583 (avg. 1.3)
7,454 (83.9%)
86 (1.0%)
Two Fer Two Fer
4,080
16,957 (avg. 4.2)
2,623 (64.3%)
644 (15.8%)
Leap Leap
3,898
7,550 (avg. 1.9)
3,354 (86.0%)
740 (19.0%)
Space Age Space Age
2,821
6,141 (avg. 2.2)
2,249 (79.7%)
555 (19.7%)
Grade School Grade School
2,298
7,434 (avg. 3.2)
1,575 (68.5%)
447 (19.5%)
Bob Bob
2,952
8,268 (avg. 2.8)
2,453 (83.1%)
596 (20.2%)
Hamming Hamming
1,910
4,142 (avg. 2.2)
1,696 (88.8%)
454 (23.8%)
ETL ETL
1,414
2,708 (avg. 1.9)
1,174 (83.0%)
275 (19.4%)
Robot Simulator Robot Simulator
1,027
3,090 (avg. 3.0)
726 (70.7%)
182 (17.7%)
Secret Handshake Secret Handshake
775
1,714 (avg. 2.2)
602 (77.7%)
153 (19.7%)
Robot Name Robot Name
1,554
2,461 (avg. 1.6)
904 (58.2%)
185 (11.9%)
Matching Brackets Matching Brackets
954
2,027 (avg. 2.1)
553 (58.0%)
77 (8.1%)
Beer Song Beer Song
751
1,739 (avg. 2.3)
482 (64.2%)
35 (4.7%)
House House
600
1,046 (avg. 1.7)
350 (58.3%)
15 (2.5%)
Food Chain Food Chain
311
386 (avg. 1.2)
153 (49.2%)
6 (1.9%)
Armstrong Numbers Armstrong Numbers
638
1,213 (avg. 1.9)
521 (81.7%)
42 (6.6%)
Collatz Conjecture Collatz Conjecture
854
1,464 (avg. 1.7)
705 (82.6%)
55 (6.4%)
Triangle Triangle
561
1,220 (avg. 2.2)
483 (86.1%)
30 (5.3%)
Pascal's Triangle Pascal's Triangle
370
733 (avg. 2.0)
253 (68.4%)
12 (3.2%)
Prime Factors Prime Factors
436
1,178 (avg. 2.7)
312 (71.6%)
22 (5.0%)
Spiral Matrix Spiral Matrix
221
241 (avg. 1.1)
113 (51.1%)
6 (2.7%)
Nth Prime Nth Prime
252
444 (avg. 1.8)
171 (67.9%)
9 (3.6%)
Forth Forth
201
332 (avg. 1.7)
56 (27.9%)
5 (2.5%)
Clock Clock
399
714 (avg. 1.8)
276 (69.2%)
13 (3.3%)
Meetup Meetup
327
398 (avg. 1.2)
258 (78.9%)
8 (2.4%)
Nucleotide Count Nucleotide Count
623
1,116 (avg. 1.8)
563 (90.4%)
92 (14.8%)
Word Count Word Count
907
1,584 (avg. 1.7)
783 (86.3%)
98 (10.8%)
Parallel Letter Frequency Parallel Letter Frequency
155
327 (avg. 2.1)
85 (54.8%)
13 (8.4%)
Alphametics Alphametics
137
241 (avg. 1.8)
48 (35.0%)
4 (2.9%)
Lens Person Lens Person
129
176 (avg. 1.4)
55 (42.6%)
2 (1.6%)
Binary Search Binary Search
341
668 (avg. 2.0)
245 (71.8%)
10 (2.9%)
Grains Grains
440
1,112 (avg. 2.5)
364 (82.7%)
30 (6.8%)
Phone Number Phone Number
636
1,145 (avg. 1.8)
559 (87.9%)
62 (9.7%)
RNA Transcription RNA Transcription
386
603 (avg. 1.6)
342 (88.6%)
23 (6.0%)
Strain Strain
368
559 (avg. 1.5)
297 (80.7%)
14 (3.8%)
Linked List Linked List
160
336 (avg. 2.1)
90 (56.3%)
0 (0.0%)
Queen Attack Queen Attack
188
390 (avg. 2.1)
152 (80.9%)
9 (4.8%)
Simple Cipher Simple Cipher
130
140 (avg. 1.1)
74 (56.9%)
2 (1.5%)
Simple Linked List Simple Linked List
192
299 (avg. 1.6)
79 (41.1%)
5 (2.6%)
Binary Search Tree Binary Search Tree
181
277 (avg. 1.5)
112 (61.9%)
12 (6.6%)
Dominoes Dominoes
95
178 (avg. 1.9)
41 (43.2%)
0 (0.0%)
Sublist Sublist
197
323 (avg. 1.6)
168 (85.3%)
18 (9.1%)
Connect Connect
92
83 (avg. 0.9)
39 (42.4%)
5 (5.4%)
Say Say
105
151 (avg. 1.4)
54 (51.4%)
3 (2.9%)
Crypto Square Crypto Square
154
189 (avg. 1.2)
110 (71.4%)
3 (1.9%)
Bowling Bowling
92
157 (avg. 1.7)
36 (39.1%)
0 (0.0%)
Pythagorean Triplet Pythagorean Triplet
161
251 (avg. 1.6)
112 (69.6%)
3 (1.9%)
Bank Account Bank Account
210
300 (avg. 1.4)
144 (68.6%)
20 (9.5%)
Zebra Puzzle Zebra Puzzle
91
83 (avg. 0.9)
38 (41.8%)
0 (0.0%)
Darts Darts
222
380 (avg. 1.7)
173 (77.9%)
9 (4.1%)
Difference of Squares Difference of Squares
640
916 (avg. 1.4)
539 (84.2%)
51 (8.0%)
Gigasecond Gigasecond
631
698 (avg. 1.1)
492 (78.0%)
41 (6.5%)
Sum of Multiples Sum of Multiples
2,176
3,056 (avg. 1.4)
1,667 (76.6%)
669 (30.7%)
Accumulate Accumulate
903
1,318 (avg. 1.5)
785 (86.9%)
192 (21.3%)
Flatten Array Flatten Array
654
859 (avg. 1.3)
468 (71.6%)
24 (3.7%)
High Scores High Scores
168
293 (avg. 1.7)
129 (76.8%)
2 (1.2%)
Pangram Pangram
719
1,145 (avg. 1.6)
625 (86.9%)
105 (14.6%)
Raindrops Raindrops
431
670 (avg. 1.6)
384 (89.1%)
28 (6.5%)
Isogram Isogram
361
496 (avg. 1.4)
295 (81.7%)
19 (5.3%)
Perfect Numbers Perfect Numbers
491
808 (avg. 1.6)
415 (84.5%)
106 (21.6%)
Protein Translation Protein Translation
245
443 (avg. 1.8)
193 (78.8%)
5 (2.0%)
Scrabble Score Scrabble Score
420
708 (avg. 1.7)
372 (88.6%)
28 (6.7%)
Sieve Sieve
380
492 (avg. 1.3)
274 (72.1%)
26 (6.8%)
Acronym Acronym
195
385 (avg. 2.0)
151 (77.4%)
3 (1.5%)
All Your Base All Your Base
167
197 (avg. 1.2)
108 (64.7%)
8 (4.8%)
Allergies Allergies
261
296 (avg. 1.1)
193 (73.9%)
4 (1.5%)
Anagram Anagram
784
1,090 (avg. 1.4)
696 (88.8%)
82 (10.5%)
Diamond Diamond
70
81 (avg. 1.2)
42 (60.0%)
1 (1.4%)
Kindergarten Garden Kindergarten Garden
187
256 (avg. 1.4)
136 (72.7%)
8 (4.3%)
Largest Series Product Largest Series Product
188
343 (avg. 1.8)
147 (78.2%)
7 (3.7%)
Matrix Matrix
497
619 (avg. 1.2)
391 (78.7%)
75 (15.1%)
Saddle Points Saddle Points
138
148 (avg. 1.1)
100 (72.5%)
3 (2.2%)
Series Series
281
344 (avg. 1.2)
215 (76.5%)
9 (3.2%)
Atbash Cipher Atbash Cipher
157
218 (avg. 1.4)
133 (84.7%)
18 (11.5%)
Book Store Book Store
258
266 (avg. 1.0)
131 (50.8%)
40 (15.5%)
Custom Set Custom Set
107
105 (avg. 1.0)
70 (65.4%)
1 (0.9%)
Luhn Luhn
170
304 (avg. 1.8)
131 (77.1%)
7 (4.1%)
Roman Numerals Roman Numerals
210
250 (avg. 1.2)
156 (74.3%)
15 (7.1%)
Rotational Cipher Rotational Cipher
77
86 (avg. 1.1)
51 (66.2%)
0 (0.0%)
Run-Length Encoding Run-Length Encoding
223
347 (avg. 1.6)
180 (80.7%)
23 (10.3%)
Complex Numbers Complex Numbers
124
166 (avg. 1.3)
82 (66.1%)
3 (2.4%)
OCR Numbers OCR Numbers
107
105 (avg. 1.0)
70 (65.4%)
4 (3.7%)
Palindrome Products Palindrome Products
156
235 (avg. 1.5)
96 (61.5%)
7 (4.5%)
Pig Latin Pig Latin
85
77 (avg. 0.9)
51 (60.0%)
3 (3.5%)
Rail Fence Cipher Rail Fence Cipher
68
77 (avg. 1.1)
42 (61.8%)
0 (0.0%)
Change Change
114
193 (avg. 1.7)
44 (38.6%)
3 (2.6%)
Minesweeper Minesweeper
110
121 (avg. 1.1)
73 (66.4%)
3 (2.7%)
Wordy Wordy
102
172 (avg. 1.7)
68 (66.7%)
4 (3.9%)
SGF Parsing SGF Parsing
67
77 (avg. 1.1)
22 (32.8%)
2 (3.0%)
Variable Length Quantity Variable Length Quantity
61
93 (avg. 1.5)
28 (45.9%)
2 (3.3%)
Zipper Zipper
102
143 (avg. 1.4)
44 (43.1%)
4 (3.9%)
4 deprecated practice exercises
Started
Attempts
Completions
Mentoring requests
Binary Binary
65
107 (avg. 1.6)
65 (100.0%)
10 (15.4%)
Hexadecimal Hexadecimal
31
39 (avg. 1.3)
31 (100.0%)
2 (6.5%)
Octal Octal
21
29 (avg. 1.4)
21 (100.0%)
1 (4.8%)
Trinary Trinary
18
19 (avg. 1.1)
18 (100.0%)
0 (0.0%)
39 unimplemented practice exercises
Affine Cipher Affine Cipher
Bottle Song Bottle Song
Circular Buffer Circular Buffer
D&D Character D&D Character
DOT DSL DOT DSL
Error Handling Error Handling
Go Counting Go Counting
Grep Grep
Hangman Hangman
ISBN Verifier ISBN Verifier
Killer Sudoku Helper Killer Sudoku Helper
Knapsack Knapsack
Ledger Ledger
List Ops List Ops
Markdown Markdown
Micro Blog Micro Blog
POV POV
PaaS I/O PaaS I/O
Poker Poker
Proverb Proverb
REST API REST API
Rational Numbers Rational Numbers
React React
Rectangles Rectangles
Resistor Color Resistor Color
Resistor Color Duo Resistor Color Duo
Resistor Color Trio Resistor Color Trio
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
Transpose Transpose
Tree Building Tree Building
Twelve Days Twelve Days
Two Bucket Two Bucket
Word Search Word Search
Yacht Yacht