[Python-ideas] new pickle semantics/API (original) (raw)
Collin Winter collinw at gmail.com
Fri Jan 26 00:39:58 CET 2007
- Previous message: [Python-ideas] new pickle semantics/API
- Next message: [Python-ideas] new pickle semantics/API
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 1/25/07, Josiah Carlson <jcarlson at uci.edu> wrote:
"tomer filiba" <tomerfiliba at gmail.com> wrote: > repr is made for humans of course, while serialization is > made for machines. they serves different purposes, > so they need different APIs.
I happen to disagree. The only reason to use a different representation or API is if there are size and/or performance benefits to offering a machine readable vs. human readable format. [snip] I'm know that there are real performance advantages to using (c)Pickle over repr/unrepr, but I use it also so that I can change settings with notepad (as has been necessary on occasion). [snip] > all i'm after is the state of the object (which is expressed in terms of > other, more primitive objects). Right, but as 'primative objects' go, you cant get significantly more primitive than producing a string that can be naively understood by someone familliar with Python and the built-in Python parser. Nevermind that it works today with all of the types you specified earlier (with the exception of file objects - which you discover on parsing/reproducing the object).
You use pickle because it's more general than repr/unrepr, not because it's faster or the result is smaller. Assuming you're talking about the ConfigObj's unrepr mode (http://www.voidspace.org.uk/python/configobj.html#unrepr-mode),
""" The types that unrepr can work with are :
strings, lists tuples
None, True, False
dictionaries, integers, floats
longs and complex numbers
You can't store classes, types or instances. """
Pickle -- and the simplification API Tomer is proposing -- is far more general than that. repr/unrepr is in no way a substitute.
Collin Winter
- Previous message: [Python-ideas] new pickle semantics/API
- Next message: [Python-ideas] new pickle semantics/API
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]