Note that it is not necessary for the non-singular code to be more compact than the source (and in many applications, a larger code is useful, for example as a way to detect and/or recover from encoding or transmission errors, or in security applications to protect a source from undetectable tampering).
The text emphasizes that non-singular codes are not always required to be compact, and sometimes a larger code is preferable for specific purposes such as error handling or security measures.