Hello, everyone

I'm just wondering how the new attribute that defines behavior (not just
additional metadata) will fit into the rest of the system.

Right now, return type hints are not implemented just as an attribute, but
as "native" type declaration.

I mean, what we have right now:

function foo(): int {}

could as well have been implemented as:

#[ReturnType('int')]
function foo() {}

Yet, the native type declarations that we have is more concise and fits
better.

Do you think it's reasonable to implement "non-discardability of the
returned value" as the attribute? Maybe new keyword would be better
solution?

Reply via email to