prepare to record lineno and column in advance

how to process lineno and column?
there 3 ways:
  compute and saved in advance
  track when parsing
  compute when necessary
prepare to go with the first way.
finish rewriting grammar

finish rewriting grammar.coffee to parser.coffee and parserutil.coffee
next step: debug and tests.