 
   # A reference to a property on *this*.
   ThisProperty: [
-    o "@ Identifier",                           -> new ValueNode new LiteralNode('this'), [new AccessorNode($2)]
+    o "@ IDENTIFIER",                           -> new ValueNode new LiteralNode('this'), [new AccessorNode($2)]
   ]
 
   # The CoffeeScript range literal.

    o "Body TERMINATOR Line",                   -> $1.push $3
    o "Body TERMINATOR"
  ]
  
  # Expressions and statements, which make up a line in a body.
  Line: [
    o "Expression"
    o "Statement"
  ]
  
  # Pure statements which cannot be expressions.
  Statement: [
    o "Return"
    o "Throw"
    o "BREAK",                                  -> new LiteralNode yytext
    o "CONTINUE",                               -> new LiteralNode yytext
  ]

  # All the different types of expressions in our language. The basic unit of

  # (optional) reference to the current index. Or, *key, value*, in the case
  # of object comprehensions.
  ForVariables: [
    o "IDENTIFIER",                             -> [$1]
    o "IDENTIFIER , IDENTIFIER",                -> [$1, $3]
  ]

  # The source of a comprehension is an array or object with an optional filter
