Chad Perrin: SOB

28 August 2008

Code Koan: Falsehood, Nullity, and Zero

Filed under: Cognition,Geek — apotheon @ 02:22

One day, a student approached the Great Master and asked “Is falsehood not a value that expresses the opposite of truth?”

The Great Master answered “Yes, it is.”

The student thanked the Great Master, and departed to meditate on this. The following day, he returned to the Great Master, and asked “Is nullity not a lack of value, and thus distinct from falsehood and truth?”

The Great Master answered “Yes, it is.”

The student thanked the Great Master, and departed to meditate on this. The following day, he returned to the Great Master, and asked “Is zero not valueless value, and thus distinct from falsehood and truth?”

The Great Master answered “Yes, it is.”

The student thanked the Great Master, and departed to meditate on this. The following day, he returned to the Great Master, and asked “If I assert a value where there is only nullity, is that not falsehood?”

The Great Master answered “Yes, it is.”

The student thanked the Great Master, and departed to meditate on this. The following day, he returned to the Great Master, and asked “If I assert a value where there is only zero, is that not falsehood?”

The Great Master answered “Yes, it is.”

The student thanked the Great Master, and departed to meditate on this. The following day, he returned to the Great Master, and asked “How can I reconcile all that you have told me in the last five days, Master? If I assert value where there is nullity, it must be false. If I assert value where there is zero, it must be false. Despite this, falsehood is distinct from nullity, and both are distinct from an object with zero value.”

The Great Master asked “Do you ask for the truth or falsehood of truth, of value, or of an object of value?” and the student was enlightened.


This SOB entry was inspired by a discussion on the ruby-talk list, where people argued over whether it was appropriate for nil to evaluate as false or for a 0 object to evaluate as true in a boolean context. I started out writing a lengthy, in-depth explication, but by the time I was 75% finished with it, I realized it was such a complex bit of explanation that even I might not be able to parse it effectively once it was complete. It is at times like this one must stop trying to grasp the moon itself, but point at it. A koan is the finger, pointing at the moon.

All instruction is but a finger pointing to the moon; and those whose gaze is fixed upon the pointer will never see beyond. Even let him catch sight of the moon, and still he cannot see its beauty.

Buddha himself supposedly said that.

5 Comments

  1. Most excellent.

    Comment by Sterling Camden — 2 September 2008 @ 05:33

  2. Many thanks.

    Comment by apotheon — 2 September 2008 @ 05:42

  3. Oh (sic!), but one(sic!) does no(sic!) that ‘Koan’ is the Bavarian word for ‘none’ ;-)

    Comment by Old Phat Stu — 3 September 2008 @ 10:05

  4. […] Chad Perrin: SOB ยป Code Koan: Falsehood, Nullity, and Zero Tell that to PHP. Tags: zero null false true zen koan buddha […]

    Pingback by Chipping the web: September 2nd -- Chip’s Quips — 3 September 2008 @ 11:18

  5. Have you seen ESR’s Unix Koans?

    Comment by Joseph A Nagy Jr — 3 September 2008 @ 03:46

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.

All original content Copyright Chad Perrin: Distributed under the terms of the Open Works License