I'll skip the bit about "code in the real world that treats leading spaces as significant" as hooky and getting what it deserves. (Yes. Its a joke:)
In the application that started the thought, the OP is reformatting data from fixed width fields to CSV. Leading spaces on numerics probably won't harm, but if nothing else they consume disc space. That aside, if you ever processed legacy data from COBOL ot FORTRAN apps, then its not uncommon for financial data to be right justified to align decimal points, but the the data is prefixed with a currency symbol.
$103.12
$10312.00
It would be easier to deal with if the leading spaces were stripped.
Its also not that uncommon to right justify string fields.
I don't expect that the feature would set the world on fire, but it seems like it would be as useful as several other fairly obscure features available with pack: uuencoding, checksum calculation, BER compressed integers, c/a formats etc.
All of these things are fairly trivial to do yourself in perl, but if you have the need for them and the need for them to operate efficiently, having them run at the C-level rather than in perl is a god-send.
From my preliminary investigation, the additional code required is fairly minimal. The biggest cost would probably be the extra documentation I think :) Perhaps the biggest benefit would be the ability to efficiently pack large arrays of data (numbers or text), right-justified for passing on to systems and software that expect this.
Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"When I'm working on a problem, I never think about beauty. I think only how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong." -Richard Buckminster Fuller
|