[Python-Dev] PEP: Adding data-type objects to Python
scott+python-dev at scottdial.com
Sat Nov 4 01:07:35 CET 2006
Travis Oliphant wrote:
> Paul Moore wrote:
>> Enough of the abstract. As a concrete example, suppose I have a (byte)
>> string in my program containing some binary data - an ID3 header, or a
>> TCP packet, or whatever. It doesn't really matter. Does your proposal
>> offer anything to me in how I might manipulate that data (assuming I'm
>> not using NumPy)? (I'm not insisting that it should, I'm just trying
>> to understand the scope of the PEP).
> What do you mean by "manipulate the data." The proposal for a
> data-format object would help you describe that data in a standard way
> and therefore share that data between several library that would be able
> to understand the data (because they all use and/or understand the
> default Python way to handle data-formats).
Perhaps the most relevant thing to pull from this conversation is back
to what Martin has asked about before: "flexible array members". A TCP
packet has no defined length (there isn't even a header field in the
packet for this, so in fairness we can talk about IP packets which do).
There is no way for me to describe this with the pre-PEP data-formats.
I feel like it is misleading of you to say "it's up to the package to do
manipulations," because you glanced over the fact that you can't even
describe this type of data. ISTM, that you're only interested in
describing repetitious fixed-structure arrays. If we are going to have a
"default Python way to handle data-formats", then don't you feel like
this falls short of the mark?
I fear that you speak about this in too grandiose terms and are now
trapped by people asking, "well, can I do this?" I think for a lot of
folks the answer is: "nope." With respect to the network packets, this
PEP doesn't do anything to fix the communication barrier. Is this not in
the scope of "a consistent and standard way to discuss the format of
binary data" (which is what your PEP's abstract sets out as the task)?
scott at scottdial.com
scodial at cs.indiana.edu
More information about the Python-Dev