The case for NaN

monkyyy crazymonkyyy at gmail.com
Thu Jul 30 15:20:48 UTC 2026


On Thursday, 30 July 2026 at 07:30:54 UTC, Araq wrote:
> On Sunday, 5 July 2026 at 19:08:44 UTC, Walter Bright wrote:
>> On 7/5/2026 1:37 AM, Richard (Rikki) Andrew Cattermole wrote:
>>> What we are able to do here though is throw static analysis 
>>> at the problem: 
>>> https://github.com/dlang/dmd/blob/master/changelog/dmd.fastdfa.uninitialized.dd
>>
>>
>> Static analysis cannot solve the problem 100%. It's the ole' 
>> halting problem.
>
> No, it's just you not understanding the halting problem. In 
> reality Java solved this problem since its inception. Many 
> other languages followed since then.

Walters correct here, you either ban things or have holes.

Java doesnt have void*, so they havnt solved the problem for the 
types of things youd use a void* for in c.

Suppose I have a ubyte and a void* and a list of types for a 
tagged reference, I use 0 to mean void itself, 1 for int etc. 
then N+1 I use to mean slices of my sumtype and there will be an 
int that the length of the slice at index 0. Then N+M is a slice 
of slice of... of my sumtype, till you fill up the ubyte.

Its valid, good luck convincing an opinionated static checker to 
allow it.


More information about the Digitalmars-d mailing list