A Brief Note on Scheme Syntax
The program snippets in "STRANGE LOOPS IN CFML, A LIVECODER’S RIDDLE" use the Lisp-based syntax of the Scheme programming language. If you're primarily familiar with C-style languages like JavaScript or C#, the syntax may look a little strange. While you don't need to understand the code to answer the questions, you might find a general description of some of the differences useful.
The most obvious difference is that the function name is put inside the parentheses around the function call. Where JavaScript would write this:
myFunction(myVariable, myX, myY);
Scheme has:
(my-function my-variable my-x my-y)
Same intent, different syntax.
And instead of writing:
let myVariable = 100;
in Scheme you might write:
(define my-variable 100)
or
(let ([my-local-variable 100])
(+ 1 my-local-variable)) ;; returns 101