I am learning Racket (a Scheme-like Lisp), and i have tried to do something like (apply + '(1 2)) but without using apply, and i failed. I was almost sure before that apply can be somehow simulated using eval, but now i have doubts.
So, my question is: can apply be implemented in Racket (or other Lisp) using only eval and other basic operations? That is, how to make this work:
{ define [my-apply f arg]
;; what does go here?
}
(my-apply + (list 1 2)) ; => 3