First Draft: Static Single Assignment
Peter C
peterc at gmail.com
Fri Nov 21 22:58:26 UTC 2025
On Friday, 21 November 2025 at 18:49:32 UTC, Walter Bright wrote:
> `final` is better anyway.
not to me it isn't:
final class Base
{
final void printInfo() {}
final Base finalFieldRef;
}
The use of 'final' for SAA will always invite a semantic
collision here, requiring the programmer to constantly pause,
recall the specific rules here with regards to the use of 'final'
- based on its context, thus slowing down comprehension and
introducing the risk of misinterpreting the codes contract - and
readers include us code reviewers!
What is needed here, is a dedicated, non-colliding (contexual)
keyword - not a convenient compiler hack.
More information about the dip.development
mailing list