On Wednesday, 4 January 2017 at 07:32:34 UTC, Adam Wilson wrote:
What are the exit conditions for graduating from std.experimental.* to std.*?

I think it should have been accepted by the community and there shouldn't be any design concern or usability issues. However, this is a chicken-and-egg problem as most people don't want to use `experimental` thoroughly in production software. Furthermore the exact criteria aren't defined which lead to the weird state that `std.experimental.allocator` is considered stable by most of the community.

The real issue is that moving from `experimental` to Phobos means that the API effectively can't be changed anymore due to aversion against deprecations and imho it's quite difficult to guarantee that an API is superb.

Has anything graduated yet?

1) allocator
------------

You may want to see this discussion:

http://forum.dlang.org/post/[email protected]

2) logger
----------

I think sth. like the capability to do async logging is needed.

[1] https://github.com/dlang/phobos/pull/3194


3) typecons
------------

Both `Wrap` and `Final` were added as part of 2.072.

ndslice is deprecated https://github.com/dlang/phobos/pull/4946
It is hard to maintain both Phobos and Mir forks.

Yep, I fully agree with Ilya here. Whenever there's a change in Mir, it will be released almost instantly with a new version. This means that thanks to DUB a user can easily upgrade to check out the greatest & latest, but also stay on a stable version if he wishes so. With Phobos one is usually tied to the bundled Phobos version of one's DMD compiler release. You may also see Ilya's proposal for a more modular standard library:

http://forum.dlang.org/post/[email protected]

Reply via email to