     @token(tag, id)
     @i += id.length
     true
-  
+
   # Matches numbers, including decimals, hex, and exponential notation.
   number_token: ->
     return false unless number: @match NUMBER, 1
     @token 'NUMBER', number
     @i += number.length
     true
-  
+
   # Matches strings, including multi-line strings.
   string_token: ->
     return false unless string: @match STRING, 1

      num += 1
      pos: string.indexOf(letter, pos + 1)
    num
  
  # Attempt to match a string against the current chunk, returning the indexed
  # match.
  match: (regex, index) ->
    return false unless m: @chunk.match(regex)
    if m then m[index] else false
  
  # A source of ambiguity in our grammar was parameter lists in function
  # definitions (as opposed to argument lists in function calls). Tag
  # parameter identifiers in order to avoid this. Also, parameter lists can

    @token 'TERMINATOR', "\n"
    @i += comment.length
    true

  # Record tokens for indentation differing from the previous line.
  indent_token: ->
    return false unless indent: @match MULTI_DENT, 1
