anchor.diff:  * https://issues.apache.org/jira/browse/GROOVY-9754[GROOVY-9754: Provide a record-like equivalent]
   * https://issues.apache.org/jira/browse/GROOVY-10240[GROOVY-10240: Support record grammar]
   * https://issues.apache.org/jira/browse/GROOVY-10298[GROOVY-10298: Refine records to not use system properties]
  +* https://issues.apache.org/jira/browse/GROOVY-10338[GROOVY-10338: Enhance records with additional helper methods]
   
   == Update history
   
   1 (2021-10-26) Initial draft
  +2 (2021-11-06) Update to align with 4.0.0-beta-2
  
positive.code: Requirements:
  
  * Maintain Java syntax compatibility where possible including the compact constructor syntax.
  * Produce classes equivalent to Java record classes when compiling on suitable JDK versions.
  
  Additional nice-to-have features:
  
  * Leverage Groovy's existing implementations e.g. inside the `@ToString` transform if/when it makes sense.
  * Assuming it is possible to leverage existing implementations, provide a fallback for earlier
  JDK versions which produce record-like classes.
  * Allow Groovy's existing transforms to augment records to offer some configurability (when it makes sense)
  * Support Groovy's named-parameter syntax
  * Support Groovy's `get` method for positional access of properties
  * Support Groovy's default parameter concept
  
  ==== Initial implementation
  
  
negative.code: existing AST transforms suitable for providing the desired functionality.
  * Provide a `@RecordBase` AST transform which encapsulates any special
  treatment not found in existing transforms.
  * Provide a `@RecordOptions` annotation which allows the constructed
  record implementation to be customised.
  * Provide support for the `record` keyword in the grammar which can be used
  instead of the `@RecordType` annotation.
  
  == References and useful links
  
  