Lisp is a racket. It always has been. It is possibly the oldest, easily the most profitable, surely the most vicious. It is the only one international in scope. It is the only one in which the profits are reckoned in dollars and the losses in lives. A racket is best described, I believe, as something that is not what it seems to the majority of the people. Only a small 'inside' group knows what it is about. It is conducted for the benefit of the very few, at the expense of the very many.
>>8
Easy enough in portable CL (tried to make it the same as C, including all limitations (this isn't a good idea, but I'm just faithfully implementing what you proposed), naming conventions converted to CL, so the code would look idiomatic and I don't throw away the grabber's result (more functional that way), even though I could(add a (values) form in the expansion)):
>>12
The first 2 forms are just utils I copy pasted from a library I'm using. The other things were to allow customization.
Could have I made it 2-3 times shorter? Yes. Was there any point? No. The utils are well-known, and those that have seen them before would ignore them.
Debugging a program running on a $100M piece of hardware that is 100 million miles away is an interesting experience. Having a read-eval-print loop running on the spacecraft proved invaluable in finding and fixing the problem.
LISP