I can somewhat make sense of that code, but the code of function ch-hof is a bit hard to read - and the function name is not helping. I guess he&#x27;s trying to see if the king is under check, and if so by which piece(s).<p>Also I notice code like:<p><pre><code>    (- (cdr kpos) 1))
</code></pre>
How is that possible? If kpos is a list of two elements to represent the king&#x27;s position, so (cdr kpos) should be a list, not compatible with subtraction.<p>For example:<p><pre><code>    #;4&gt; (- (cdr &#x27;(1 2)) 1)

    Error: (-) bad argument type: (2)</code></pre>