Generality creep
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Thu Mar 28 18:51:18 UTC 2019
On 3/28/19 2:48 PM, ag0aep6g wrote:
> On 28.03.19 19:30, Andrei Alexandrescu wrote:
>> We should do what C, C++, Java, C# and many other languages do - leave
>> past mistakes in maintenance mode and move on with new stuff. It's
>> like blockchain - once done, it can't be undone. You do a new one. C
>> has about three ways of converting numbers to strings and back. C++
>> added a couple, poorly designed. Then they added a better one. And
>> don't get me started about I/O (two ways of doing it in C, and another
>> one in C++ that nobody in their right mind would use). Same with Java
>> pre- and post-generics interfaces for comparing objects. It's just
>> that if something is bad they define a better one and move on.
>>
>> We have a language with virtually no global scope - a versioning
>> engineer's dream. Yet we are coy to tap into that power. Instead, we
>> wring hands over the breakages that would happen if we change
>> std.json. The time is ripe for std.v2, which would do the right things
>> and support simple migration.
>
> I'm not against that at all, but I'm not convinced that you can make it
> happen quickly.
Three solid engineers would make this a quarter's worth of work. I don't
think we have them.
Remember that this sub-thread started with a mention of
> my pull request that was open for a year, sitting idle most of the time.
>
> So until new Phobos materializes some more, I'd appreciate if we could
> fix issue 18657 one way or the other in old Phobos.
For that I think we should bite the bullet and let RefRange go.
More information about the Digitalmars-d
mailing list