this will break for ``not in`` as ``!in_array`` is not a function. Wouldn't it be easier to compile ``not in(foo, bar)`` as ``not(in(foo, bar))`` as we already have the ``not`` unary operator anyway ?