Regarding the proposed Binray Literals Deprecation

jmh530 john.michael.hall at gmail.com
Mon Sep 12 14:48:12 UTC 2022


On Sunday, 11 September 2022 at 07:24:03 UTC, Max Samukha wrote:
> On Saturday, 10 September 2022 at 19:05:38 UTC, Don Allen wrote:
>>
>> I couldn't agree more with this. I've made it clear that I've 
>> done some very successful work with D and have been very 
>> pleased with the outcome. But this work involved porting C 
>> code I wrote 10 years ago that had become ugly (or maybe it 
>> always was) and difficult to maintain. The D version is a big 
>> improvement.
>
> Removing the binary literals does not mean reduction in 
> complexity, neither in the compiler, nor in the user code.

There are multiple ways that complexity has been used on this 
thread, which I think contributed to a lot of disagreements. It 
might be better in the future if people make clear whether they 
refer to compiler-complexity or user-complexity (or call it 
developer-complexity, same idea).

I don't have the knowledge to comment on how they impact 
compiler-complexity.

I think most people would agree that removing binary literals 
would not meaningfully reduce user-complexity. I haven't heard of 
a new D programmer struggling with understanding about how binary 
literals interact with some other feature in a complex way.  They 
aren't that frequently used, but people can look up how they work 
if you need them. However, there's also an asymmetry. The more a 
user makes use of them, the larger the potential cost to them for 
the removal. So, even if there is a minor reduction of 
user-complexity, the people who make use of them face a larger 
cost. I think this is what frustrates some on the thread.

I would echo the comments of others about the importance of 
automated tools to reduce the burden on users of these kinds of 
changes. I don't recall anyone mentioning the removal of 
complex/imaginary numbers, but the issues are the same.


More information about the Digitalmars-d mailing list