Unlike Lisp, C lacks the ability to return multiple values, and so some C functions take arguments which are used to return a value. When dealing with such a C function, we'd really rather convert such things into something more Lispy, like a secondary return value, and not pass an argument to the function at all.
In other words, given the C
(
Read more... )