It’s because Arc by design can’t store nil as a value in tables, like Lua. And the value is either ‘t or nil. Hence it’s a boolean.

My fork of arc supports booleans directly.

In other words, I can guarantee beyond a shadow of a doubt that dead and deleted are both booleans, not integers.