Want to learn and master Scheme?

Join Exercism’s Scheme Track for access to 39 exercises with automatic analysis of your code and personal mentoring, all 100% free.

Explore exercises

About Scheme

(let ((quine '((lambda (q) `(,q ',q))
               '(lambda (q) `(,q ',q)))))
  (equal? quine (eval quine)))

39 coding exercises for Scheme on Exercism. From Roman Numerals to Pascal's Triangle.


Get better at programming through fun, rewarding coding exercises that test your understanding of concepts with Exercism.

See all Scheme exercises on Exercism

Key Features of Scheme


Scheme

Compact

Scheme supplies a small number of general-purpose features.

Functional

Inspired by lambda calculus, scopes and loops are expressed by defining and calling functions.

Suitable for embedding

Some applications use Scheme as their extension language.

S-expressions

Both source code and data are expressed using nested lists.

Numeric tower

Scheme supports exact and inexact numbers.

Hygienic macros

Scheme supports hygienic macros, allowing the syntax to be extended reliably.

Get mentored the Scheme way

Every language has its own way of doing things. Scheme is no different. Our mentors will help you learn to think like a Scheme developer and how to write idiomatic code in Scheme. Once you've solved an exercise, submit it to our volunteer team, and they'll give you hints, ideas, and feedback on how to make it feel more like what you'd normally see in Scheme - they'll help you discover the things you don't know that you don't know.

Learn more about mentoring

Community-sourced Scheme exercises

The Scheme track on Exercism has 39 exercises to help you write better code. Discover new exercises as you progress and get engrossed in learning new concepts and improving the way you currently write.

See all Scheme exercises
Scheme

Get started with the Scheme track

The best part, it’s 100% free for everyone.