• Skip to main content
  • Skip to footer

PurelyFunctional.tv

  • Learn Clojure
  • About
  • 🛒 Cart
  • Log in

Master lazy sequences before they master you

Clojure sequences are lazy by default. They're a common source of errors in Clojure software. What's worse, the error messages do not give much clues that the error has to do with laziness. They can be frustrating, but they're worth learning for the power they give you. Here's what you need to learn:

  • What they are and how to think about them
  • How to avoid the most common gotchas
  • The benefits of laziness and how to make them work for you

This course is designed to get you over the major hurdles of lazy sequences so you can start enjoying the separation of concerns that Clojure's lazy sequences grant you.

Lazy Sequences

Updated February 25, 2021

Want this course?

Online License

$75
Get this course
--
Watch Online
Lifetime Access
For an individual
Buy for $75

Love it or leave it guarantee

If you don't learn as much from this course as you thought, just ask for a refund within 30 days and I'll give you your money back.

Video time: 34m13s
0 / 6
0 / 6

Lessons

5 min Free

1. What are lazy sequences?

This lesson introduces lazy sequences. This lesson includes a video with visual aids. The video lesson is 6 minutes long.

3 min Free

2. Gotcha: Effects and chunking

This lesson teaches the care needed when mixing effects and laziness, as well as what chunking is. This lesson includes a video screencast with slides and exercises. The video is 5 minutes long, and the exercises might take 10 minutes.

3 min

3. Gotcha: *print-length*

How to use print-length to avoid printing very long lists. This lesson includes a video screencast and an exercise. The video is 3 minutes long.

7 min

4. Gotcha: holding onto the head

Got an out of memory error? It could be a common gotcha with lazy sequences. A screencast and some code are included. The video is 8 minutes long.

4 min

5. Gotcha: length checks

This lesson teaches how to check the length of all sequences, including infinite ones. It includes a screencast and some sample code. The video is four minutes long.

11 min

6. The Benefits of Laziness

This lesson teaches the biggest benefit of lazy sequences, which is of separating the concerns of how to generate elements from what to do with them. This lesson includes a video screencast. This lesson includes a video screencast.

Footer CTA

Level up your Clojure skills

The PurelyFunctional.tv Newsletter is a weekly email that helps you improve your Clojure skills through challenges, tips, and news.

Enter your email address to receive emails about Clojure and Functional Programming. These include the weekly newsletter and occasional offers. You can unsubscribe any time.

Copyright © 2021 LispCast and Eric Normand