This issue also arises in the Annotation system used by Nitro. The solution there was to use NullClass. Unfortuately it does have the TRUE conditional issue. I've asked matz and nabu about adding NullClass to Ruby core, but they did not feel it was needed. Perhaps they might reconsider now that it has come up again?