SlaveCode LogoSlaveCode.
Academy
RoadmapProblemsSystem Design
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
‌
SlaveCode LogoSlaveCode.

Standardize your coding journey. From basic academy courses and guided roadmaps to advanced system design, company interview prep, and real-time coding arenas. The all-in-one platform to master algorithms and prove your engineering excellence.

Officially Featured by Judge0

Learn & Practice

  • Academy
  • Problems
  • Roadmap
  • System Design
  • Companies

Compete & Tools

  • Arena
  • Contests
  • Compilers

Legal & Support

  • Report an Issue
  • Privacy Policy
  • Terms of Service
  • Contact Us

© 2026 SlaveCode. All rights reserved.

Gleam

Gleam

Gleam is a statically typed functional programming language for building scalable concurrent systems. It compiles to Erlang and has straightforward interoperability with other BEAM languages such as Erlang, Elixir, and LFE.

Master Gleam with
Interactive Learning

Elevate your Gleam skills through 127 curated exercises across 30 core concepts. Master problem-solving with a structured learning path designed for modern developers.

Gleam

About Gleam

Gleam is designed with the following principles in mind:

Be safe

An expressive type system inspired by the ML family of languages helps us find and prevent bugs at compile time, long before it reaches your users.

For the problems the type system can't solve (such as your server being hit by a bolt of lightning) the Erlang/OTP runtime provides well tested mechanisms for gracefully handling failure.

Be friendly

Hunting down bugs can be stressful so feedback from the compiler should be as clear and helpful as possible. We want to spend more time working on our application and less time looking for typos or deciphering cryptic error messages.

As a community we want to be friendly too. People of all backgrounds, genders, and experience levels are welcome and must receive equal respect.

Be performant

The Erlang/OTP runtime is known for its speed and ability to scale, enabling organisations such as WhatsApp and Ericsson to reliably handle massive amounts of traffic at low latency. Gleam should take full advantage of this runtime and be as fast as other BEAM languages such as Erlang and Elixir.

Be a good citizen

Gleam makes it easy to use code written in other BEAM languages such as Erlang, Elixir and LFE, so there's a rich ecosystem of tools and library for Gleam users to make use of.

Users of other BEAM languages should in return be able to take advantage of Gleam, either by transparently making use of libraries written in Gleam, or by adding Gleam modules to their existing project with minimal fuss.

Key Features of Gleam

Safe

Gleam's powerful static type system helps find and prevent bugs at compile time.

Fault tolerant

The Erlang virtual machine provides well tested mechanisms for gracefully handling failure.

Friendly compiler

Hunting down bugs can be stressful so Gleam's compiler provides clear and helpful feedback.

Friendly community

People of all backgrounds, genders, and experience levels are welcome in the Gleam community.

Erlang compatible

Gleam makes it easy to use code written in other BEAM languages such as Erlang, Elixir and LFE.

Performant

Gleam adds no overhead of its own, so all Gleam programs are as fast as their Erlang counterparts.

Track icon

Safe

Gleam's powerful static type system helps find and prevent bugs at compile time.

Fault tolerant

The Erlang virtual machine provides well tested mechanisms for gracefully handling failure.

Friendly compiler

Hunting down bugs can be stressful so Gleam's compiler provides clear and helpful feedback.

Friendly community

People of all backgrounds, genders, and experience levels are welcome in the Gleam community.

Erlang compatible

Gleam makes it easy to use code written in other BEAM languages such as Erlang, Elixir and LFE.

Performant

Gleam adds no overhead of its own, so all Gleam programs are as fast as their Erlang counterparts.

A taste of Gleam concepts you'll cover

Ba

Basics

Bo

Bools

Mo

Modules

In

Ints

Fl

Floats

Ca

Case Expressions

An

Anonymous Functions

St

Strings

Cu

Custom Types

Ge

Generics

La

Labelled Fields

Li

Lists

Op

Options

Re

Recursion

Tu

Tuples

La

Labelled Arguments

Pi

Pipe Operator

Co

Constants

Or

Orders

Ty

Type Aliases

Di

Dicts

Ta

Tail Call Optimisation

Se

Sets

Re

Results

Ex

External Functions

Ex

External Types

Le

Let Assertions

Bi

Bit Arrays

Op

Opaque Types

Us

Use Expressions

Io

IO

Ni

Nil

Ph

Phantom Types

It

Iterators

Qu

Queues

Re

Regular Expressions

Dive into Gleam practice challenges

Difference Of Squares
Difference Of Squares
Level 1

Find the difference between the square of the sum and the sum of the squares of the first N natural numbers.

Hello World
Hello World
Level 1

SlaveCode's classic introductory exercise. Just say "Hello, World!".

Resistor Color
Resistor Color
Level 1

Convert a resistor band's color to its numeric representation.

Reverse String
Reverse String
Level 1

Reverse a given string.

RNA Transcription
RNA Transcription
Level 1

Given a DNA strand, return its RNA complement.

Two Fer
Two Fer
Level 1

Create a sentence of the form "One for X, one for me.".