Worst ideas/features in programming languages?

Timon Gehr timon.gehr at gmx.ch
Tue Jan 4 06:37:02 UTC 2022

On 04.01.22 06:40, Walter Bright wrote:
> On 1/3/2022 6:06 PM, Timon Gehr wrote:
>> On 03.01.22 10:27, Walter Bright wrote:
>>> On 1/2/2022 11:42 PM, Timon Gehr wrote:
>>>> And there is also this:
>>>> void foo(T...)(T args){}
>>>> int[2] x;
>>>> foo(x); // foo!(int[2]) and foo!(int,int) would now need to be the same
>>> With such implicit conversions, the language would just descend into 
>>> chaos. So no :-)
>> It's not an implicit conversion.
> Looks like it to me!
> ...

If `foo(int, int)` is defined to be literally the same as `foo(int[2])`, 
there is no conversion. But anyway, I guess you'd also consider anything 
that would make this work an "implicit conversion"?

double foo(int x,string y);


If so, maybe one way to make _some_ progress on this is to have a DIP 
specifically for destructuring, without adding any new types?

More information about the Digitalmars-d mailing list