I would like to evaluate a list of booleans like
(nil nil t)
into a single boolean, such that if any element is true, then the expression evaluates to true.
I first looked at the (or)
function in elisp, but it does not take a list of booleans as an argument. Instead it requires its arguments to be "un-wrapped" outside of a list. In other words,
(or (nil nil t))
simply evaluates to the entire list (nil nil t)
because it treats the it as a single argument. I would like something that instead evaluates exactly to t
. - I understand that (nil nil t)
is truthy, but that's beside the point.
How can I convert (or (nil nil t))
into just (or nil nil t)
or just t
?
After some thought, I can think of
(eval (cons 'or '(nil nil t)))
but is there some other more idiomatic way that I'm missing?