(rontolisp) docs
← Higher-order functions

fnil

(fnil f x) / (fnil f x y) / (fnil f x y z)

Answers f behind a patch replacing a nil first (second, third) argument with x (y, z); false is not patched. The answer needs at least as many arguments as defaults, like the oracle's. As a value it takes a function and one to three defaults.