On Monday, 15 December 2014 at 10:52:04 UTC, Artem Tarasov wrote:
Fair point. The trouble I have with D in particular is its definition of 'quality'. For example, I'm unable to consider THIS 'quality effort': hhttps://github.com/tom-tan/phobos/commit/c7e99d9baff0749dfb334db322c5471b21a2539d - it's simply fighting with the unintelligent compiler.
For standard library quality means not only robustness of implementation itself but also taking delicate care of things like backwards compatibility and hiding as much pain as possible from the end user. All the @safe commits fall in the latter domain - it may expose deficiency in compiler / language definition (or both) but waiting until better compiler is not something Phobos users would appreciate.
Though speaking specifically about @safe it is exactly the very point of standard library runtime to contain such weird hacks - so that user code can totally avoid resorting to those. Many workarounds are because of compiler deficiency indeed but still many are expected and needed.
By the way this specific commit looks suspicious to me :) Wrapping whole functions (other than extern(C)) in @trusted is rarely a good idea. But I haven't been reviewing Phobos pulls for last ~2 months so don't know the context.