It's absolutely a tradeoff requireing a cost-benefit analysis.
Prior to Java 5, the language was quite simple, the spec readable and understandable without requiring deep knowledge of compilers.
The introduction of generics and lambdas massively complicated the language specification. But those features also were huge improvements that pretty much anyone would consider worth the cost.
Prior to Java 5, the language was quite simple, the spec readable and understandable without requiring deep knowledge of compilers.
The introduction of generics and lambdas massively complicated the language specification. But those features also were huge improvements that pretty much anyone would consider worth the cost.