(values) in that context returns #<unspecified> for historical reasons, and to make code more readable; otherwise we get stuff like (abs -1 (f)). list-values is intended for use with quasiquote -- the special case of () is explained in s7.html.