Aha. From `Data.ByteString.Lazy` we have: null :: ByteString -> Bool null Empty = True null _ = False So either users need to norm ByteStrings before testing them for emptiness or it needs to happen within the ByteString code... -- Jason Dusek