From: Brian I. <briani@ActiveState.com> - 2001-05-19 17:44:30
|
"Clark C . Evans" wrote: > > RFC822 solves many different things: > > 1) It gives a place to put document level meta-data > that is not part of the content, such as the YAML-Version > and the character encoding. > > 2) It allows for BLOBs via MIME, and any mail reader > (mutt for instance) can read our format and break > out the various BLOBs, allowing them to be viewed > (and possibly edited) seperately. > > 3) It makes YAML very compatible with most mail > processing systems out-of-the-box. If an RFC822 > header is allowed, point a YAML parser at it > to extract the data. I like the idea of allowing optional RFC822 headers before a YAML doc. I don't like the idea of them imposing any further restrictions on YAML. That's a very slippery slope. > > Also, RFC822 isn't that hard (especially the subset > of treating structured headers as unstructured headers). > > | One benefit is that a YAML parser won't have to implement > | the strange RFC822 text parsing rules, ever. > > Yes, these would be an exception... but given that > we treat all structured fields as unstructured it > really isn't that much code... far less than 50 lines, > MIME excepted (which is probably another 150-200 lines). Agreed. Stop worrying about implementation. That's our *job*. > > | I'm catching Brian's headache when trying to > | figure these out, and I have no confidence at all > | in being able to define a subset which is (1) simple > | and (2) will work on most existing such headers. > | Clark is being optimistic here, I think; definitely > | his current white space rules aren't such a subset. > > We don't need a subset. When the RFC822 headers are > given, the YAML content is the *body* which is not > parsed by other RFC822 tools. OK. So, that means the next time we propose an option for the YAML body that doesn't resemble 822, I don't want to hear opposing arguments based on 822. Fair? Brian -- perl -le 'use Inline C=>q{SV*JAxH(char*x){return newSVpvf ("Just Another %s Hacker",x);}};print JAxH+Perl' |