I would try using COALESCE(list) which will return the first non-NULL in the list.
That worked! Thanks!
The second part is why does postgresql not evaluate the function if one of the arguments is null?
I would try using COALESCE(list) which will return the first non-NULL in the list.