Join Exercism’s Scheme Track for access to 73 exercises with automatic analysis of your code and personal mentoring, all 100% free.
(let ((quine '((lambda (q) `(,q ',q))
'(lambda (q) `(,q ',q)))))
(equal? quine (eval quine)))
Get better at programming through fun, rewarding coding exercises that test your understanding of concepts with Exercism.
Help lining up customers at Yaʻqūb's Deli.
Clean up user-entered phone numbers so that they can be sent SMS messages.
Make sure the brackets and braces all match.
Scheme supplies a small number of general-purpose features.
Inspired by lambda calculus, scopes and loops are expressed by defining and calling functions.
Some applications use Scheme as their extension language.
Both source code and data are expressed using nested lists.
Scheme supports exact and inexact numbers.
Scheme supports hygienic macros, allowing the syntax to be extended reliably.
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 mentoringThe Scheme track on Exercism has 73 exercises to help you write better code.
See all Scheme exercises