On Sat, May 08, 2004 at 04:59:52PM -0700, Jeff Clites wrote:
> On May 8, 2004, at 10:30 AM, Dan Sugalski wrote:
> 
> >Do we want to make a distinction between record reads and just plain 
> >"read me X (bytes|codepoints|graphemes)" requests on filehandles and, 
> >if so, do we think it's worth distinguishing between fake records 
> >(line-oriented things) and real records (where there's a fixed record 
> >size or absolute record marker)?
> 
> I'd say that there's no need to distinguish. C's stdlib tries to be 
> record-oriented, and I've never found it to be useful. Trying to be 
> record-oriented (for what people today want from records) at the IO 
> level seems awkward--and it's easy to write (at the user level) a "give 
> me the next token" interface on top of a byte-source or a 
> character-source, and there's not a lot of benefit to modeling this as 
> IO.
> 
> >(Note that, regardless of anything else, we do need to separate out 
> >stream IO and record IO, both for layer filtering reasons and for pure 
> >practicality as there still are some pure-record filehandles (UDP 
> >sockets and such) even on a Unix system)
> 
> On Unix, record-oriented IO is specific to sockets only (not 
> filehandles in general). Not sure what you mean by "layer filtering".

If I write to a filehandle for a file opened in append mode I want
(to be able to make) that write still be atomic when it gets to the
operating system (ie not broken up into multiple writes, or merged
with previous data).

Tim.

Reply via email to