title: FUN.VALUE argument in vapply
body: <p>I don't really get the <code>FUN.VALUE</code> argument in <code>vapply</code>.
  Here is my example:</p>
  
  <pre><code>a = list(list(1,2), list(1), list(1,2,3))
  
  # give the lengths of each list in a
  sapply(a, length)
  </code></pre>
  
  <p>Now, I try to make it type-safe using <code>vapply</code> instead of <code>sapply</code></p>
  
  <pre><code># gives me same result as sapply
  vapply(a, length, FUN.VALUE=1)
  
  # same result, but why?
  vapply(a, length, FUN.VALUE=1000)
  
  # gives me error
  vapply(a, length, FUN.VALUE="integer")
  
  # gives me error
  vapply(a, length, FUN.VALUE="vector")
  
  # gives me error
  vapply(a, length, FUN.VALUE=c(1,2))
  </code></pre>
  
  <p>From <code>?vapply</code> I read that <code>FUN.VALUE</code> can be a scalar, vector or matrix, and is used to match the type of the output. Any hints for why <code>vapply</code> behaves this way?</p>