Cannot create apply function with static language?
问题 I have read that with a statically typed language like Scala or Haskell there is no way to create or provide a Lisp apply function: (apply #'+ (list 1 2 3)) => 6 or maybe (apply #'list '(list :foo 1 2 "bar")) => (:FOO 1 2 "bar") (apply #'nth (list 1 '(1 2 3))) => 2 Is this a truth? 回答1: A full APPLY is difficult in a static language. In Lisp APPLY applies a function to a list of arguments. Both the function and the list of arguments are arguments to APPLY. APPLY can use any function. That