       matches.push(out)
     matches
 
+# Trivial helper class.
 class MatchTracker
   constructor: (@parent, @stage, @type, @val) ->
 

      else
        current = next

  compile_matches: (list, val) ->
    matches = []
    for tracker in list


  # this code was stolen and adapted from Djinn, which 
  # is why it looks so hideous.  Not that Djinn is hideous,
  # just that you're seeing it out of context. It's a messy,
  # arguably perverted, variant of the famous Thompson algorithm for
  # testing NFA acceptance.
  # See http://swtch.com/~rsc/regexp/regexp1.html, specifically the
  # section with heading "Implementation: Simulating the NFA"
  match_request_sequence: (sequence) ->
    stage = @matchers
    current = [new MatchTracker(null, stage)]
