Eh. Meh. There are other approaches too. How about a sufficiently powerful @ConstExpr ? And then just use a normal constructor (or factory static) assignment, that then runs at build time not run time i.e @ConstExpr var date = LocalDate.of("2019-01-31);
. And, if changing syntax, well, then @ConstExpr
could become a keyword i.e. const var date = LocalDate.of("2019-01-31");
Well, const var
arguably sounds weird, granted, but conveniently in context, const
is already a completely unused reserved word in Java](https://en.wikipedia.org/wiki/List_of_Java_keywords#Unused), so no breaking changes occur.
Or just switch to lisp, lol....