This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author tim.peters
Recipients
Date 2001-10-13.03:43:12
SpamBayes Score
Marked as misclassified
Message-id
In-reply-to
Content
Logged In: YES 
user_id=31435

The marshal long format actually uses 15-bit digits, each 
*stored* in 16 bits (the high bit of the high byte of which 
is always 0).  That would be a PITA to preserve even if 
Python just moved to 16-bit digits.  marshal's purpose is 
for efficient loading of .pyc files, where that odd format 
makes good sense; since it wasn't designed to be a general-
purpose data transmission format (and has many shortcomings 
for such use), I don't want to see a tail wagging the dog 
here.

Cross-release compatibility is taken seriously in pickle, 
and pickle handles many more cases than marshal, although 
pickle's author (as you've discovered) didn't give a hoot 
about efficient storage of longs.  I'd rather add an 
efficient long format to pickle than hobble marshal 
(although because pickle does take x-release compatibility 
seriously, it has to continue accepting the "longs as 
decimal strings" format forever).
History
Date User Action Args
2007-08-23 16:01:32adminlinkissue467384 messages
2007-08-23 16:01:32admincreate