It’s more useful if you are implementing this in a general programming language, not in the shell, or if you want to know how it works under the hood.