std.stream replacement

Jonathan M Davis jmdavisProg at gmx.com
Tue Mar 5 00:22:00 PST 2013


On Tuesday, March 05, 2013 09:14:16 BLM768 wrote:
> While working on a project, I've started to realize that I miss
> streams. If someone's not already working on bringing std.stream
> up to snuff, I think that we should start thinking about to do
> that.
> Of course, with ranges being so popular (with very good reason),
> the new stream interface would probably just be a range wrapper
> around a file; in fact, a decent amount of functionality could be
> implemented by just adding a byChars range to the standard File
> struct and leaving the parsing functionality to std.conv.parse.
> Of course, there's no reason to stop there; we could also add
> socket streams, compressed streams, and just about any other type
> of stream, all without an especially large amount of effort.
> Unless someone already wants to tackle the project (or has
> already started), I'd be willing to work out at least a basic
> design and implementation.

In general, a stream _is_ a range, making a lot of "stream" stuff basically 
irrelevant. What's needed then is a solid, efficient range interface on top of 
I/O (which we're lacking at the moment).

Steven Schveighoffer was working on std.io (which would be a replacement for 
std.stdio), and I believe that streams were supposed to be part of that, but 
I'm not sure. And I don't know quite what std.io's status is at this point, so 
I have no idea when it'll be ready for review. Steven seems to be very busy 
these days, so I suspect that it's been a while since much progress was made 
on it.

- Jonathan M Davis


More information about the Digitalmars-d mailing list