If you ever need to deal with binary data, or with fixed width records, then pack/unpack may be useful tools and should be considered.
That doesn't mean that they'll always be the *best* tool for the job as they have some annoying limitations and the documentation is somewhat, umm, opaque, but you should certainly consider them, and if you decide to use something else you should be able to justify it. Remember - TIMTOWTDI,BMOTAWMOTT,ESOTT (but most of them are wrong most of the time, essential some of the time).
For example, I mostly don't use them in Data::Hexdumper because I want to support 64 bit data on 32 bit platforms.