But they aren't *required* by the library.  Creating an error is an *absolutely necessary* penalty for deferred--you simply cannot use the library without it.  Other libraries do not require that penalty.  You, as the developer, are free to make that decision yourself.