On Tuesday, 3 June 2025 at 16:18, Tim Düsterhus <t...@bastelstu.be> wrote:
> Am 2025-06-03 01:46, schrieb Ilija Tovilo:
> 
> > IMO, these checks are useful enough not to be removed.
> 
> I agree with Ilija (and also Rowan).

Well, I'm not sure Ilija and Rowan agree between each other.
AFAIU Ilija thinks void living on its weird island is good.
Meanwhile, Rowan thinks it is somewhat confusing and that void should be a 
subtype of null.

> To me there is an important semantic difference between “not returning 
> anything”
> and “always returning null”.
> I believe that `void` being in a distinct type
> hierarchy is the right choice and when considering “untyped returns” to
> be soft-deprecated / discouraged, there are no inconsistencies either.

Then our type system is not logical as we have a top type that is not actually 
a top type.
This is something that will cause problems for function types, especially if 
they have generic arguments.
(if not causing weird issues on its own just for generics)

Best regards,

Gina P. Banyard

Reply via email to