O'Reilly logo

Land of Lisp by Conrad Barski M.D.

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

The Conditionals: if and Beyond

Now that you understand how Lisp handles true and false, let’s look at if and some of the other conditional commands.

One Thing at a Time with if

The if command can be used to make different things happen when things are true (such as when 1 + 2 = 3) or false (such as when 1 + 2 = 4).

> (if (= (+ 1 2) 3)
      'yup
      'nope)

YUP

> (if (= (+ 1 2) 4)
      'yup
      'nope)

NOPE

The if command can also be used to check whether a list is empty:

> (if '(1)
      'the-list-has-stuff-in-it
      'the-list-is-empty)

THE-LIST-HAS-STUFF-IN-IT

> (if '()
      'the-list-has-stuff-in-it
      'the-list-is-empty)

THE-LIST-IS-EMPTY

So far, the only way to branch on a condition that we’ve looked at has been the if command:

> (if (oddp 5)
      'odd-number
      'even-number)

ODD-NUMBER

All ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required