Also it sounds like evaluating arguments and passing them to a function just won't work.
nevermind I didnt get what you were saying.
Once you have the aforementioned tables, you can implement functions calls
as youl would on a normal interperter, by simply binding the argument symbols
to the arguments and evaling the body of the function