anchor.diff:  
   Same thing for collections, etc.
   
  -Thus, you can use some shortcuts in things like while(), if(), the ternary operator, the Elvis operator (see below), etc.
  -
  -It's even possible to customize the Groovy Truth, by adding an boolean asBoolean() method to your classes!
  +Thus, you can use some shortcuts in things like `while()`, `if()`, the ternary operator, the Elvis operator (see below), etc.
  +
  +It's even possible to customize the Groovy Truth, by adding an boolean `asBoolean()` method to your classes!
   
   == Safe graph navigation
   
  -Groovy supports a variant of the . operator to safely navigate an object graph.
  -
  -In Java, when you're interested in a node deep in the graph and need to check for null,
  -you often end up writing complex if, or nested if statements like this:
  +Groovy supports a variant of the `.` operator to safely navigate an object graph.
  +
  +In Java, when you're interested in a node deep in the graph and need to check for `null`,
  +you often end up writing complex `if`, or nested `if` statements like this:
   
   [source,groovy]
   ----
  
positive.code: so as to help with documenting your code, and also help IDEs for code-completion,
  or for leveraging the static type checking or static compilation capabilities of Groovy.
  
  Another place where 'def' is redundant and should be avoided is when defining constructors:
  
  [source,groovy]
  ----
  
negative.code: }
  ----
  
  == Equals and `==`
  
  Java's `==` is actually Groovy's `is()` method, and Groovy's `==` is a clever `equals()`!
  
  To compare the references of objects, instead of `==`, you should use `a.is(b)`.
  
  But to do the usual `equals()` comparison, you should prefer Groovy's `==`,
  as it also takes care of avoiding `NullPointerException`, independently of whether the left or right is `null` or not.
  
  Instead of:
  
  