On Fri, 09 Mar 2012 18:14:39 -0500, H. S. Teoh <hst...@quickfur.ath.cx> wrote:

On Fri, Mar 09, 2012 at 11:46:24PM +0100, Alex Rønne Petersen wrote:
On 09-03-2012 23:32, Walter Bright wrote:
>This statement is from Linus Torvalds about breaking binary compatibility:
>
>https://lkml.org/lkml/2012/3/8/495
>
>While I don't think we need to worry so much at the moment about
>breaking binary compatibility with new D releases, we do have a big
>problem with breaking source code compatibility.
>
>This is why we need to have a VERY high bar for breaking changes.

If we want to start being able to avoid breaking changes, we
*really* need to finally deprecate the stuff that's been slated for
deprecation for ages...
[...]

Does that include std.stdio and std.stream? When are we expecting std.io
to be ready?

Sadly, I have no guarantees for when it will be ready. The rewrite is mostly in place, what I'm struggling with is how to make it backwards compatible with std.stdio. Specifically, I think I need to rewrite std.typecons.RefCounted to be more flexible.

IMHO, this is one major change that needs to happen sooner rather than
later. The current lack of interoperability between std.stdio and
std.stream is a big detraction from Phobos' overall quality.

I agree, as I watch other modules which would benefit from the rewrite get more attention, I cringe hoping that it doesn't introduce something that would necessitate a complete rewrite with the new system (thereby making my case for rewriting std.stdio weaker).

It's my number 1 priority for D. The problem is that D is not my number 1 priority right now :(

If you want to take a look so far (I haven't compiled in a long time since starting the migration to backwards compatibility):

https://github.com/schveiguy/phobos/blob/new-io2/std/io.d

I also have a trello card for it...

-Steve

Reply via email to