Condensing Indy Bootstraps: Improving Performance in Java
The article discusses the concept of condensing indy bootstraps in Java to improve performance. The author explains that condensation involves shifting the work of bootstraps from runtime to build time. This is achieved by creating a condenser for each bootstrap or by evaluating the bootstraps at build time. The article explores the pros and cons of both approaches. While bespoke condensers offer a straightforward solution, they create technical debt and increase the risk of bugs due to the conceptual gap between the programming models. On the other hand, build-time evaluation of bootstraps faces semantic and practical challenges, as not all bootstraps are amenable to this transformation. The article suggests that building bootstrap shifting directly into the programming model may be a more promising alternative. This approach would allow developers to opt-in to build-time evaluation and avoid the complexities associated with maintaining separate implementations. Overall, the article highlights the importance of improving performance in Java through innovative techniques like condensing indy bootstraps.