Why should we return the empty string if `name` is empty? Is this working around the behavior of `undef` in functions?