Loop invariants and AST transformations on loops: a proposed extension for @ApacheGroovy. Feedback welcome. Making the semantics of loops π‘šπ‘œπ‘Ÿπ‘’ π‘’π‘›π‘‘π‘’π‘Ÿπ‘ π‘‘π‘Žπ‘›π‘‘π‘Žπ‘π‘™π‘’ π‘“π‘œπ‘Ÿ β„Žπ‘’π‘šπ‘Žπ‘›π‘  π‘Žπ‘›π‘‘ 𝐴𝐼.
https://groovy.apache.org/blog/loop-invariants
The Apache Groovy programming language - Blogs - Design by contract with Groovyβ„’: loop invariants

This post looks at a proposed extension to Groovy's design-by-contract support in groovy-contracts to allow invariants on loops.