>>55
I'll leave
>>53 to give you a full answer, but you know, this reminds me of my earlier post
>>30, where I explained that if the language had good syntactic abstraction facilities, which in turn would lead to keyword/optional/rest arguments with ease, the overall syntax for the function call would be very simple, and wouldn't leave NULL, NULL, NULL all over the place.
As for efficiency, this depends on how your system implements process creation, if the process already has all that data associated with it in some system structure, it probably wouldn't cost much (validation of parameters may still cost a bit) to allow specifying it in the process creation function. Just because something looks simpler, doesn't mean it's more efficient, actually in Lisp, if you want better performance, you're going to write more code than a simple terse version. In C, the situation is a bit different, you have to write a lot of code for advanced functionality, but you don't have to work for speed.
So we can say, speed can be easier to achieve in C, but you have to work a lot of functionality. In Lisp, you get functionality easily, but have to work for speed.