Tracking Locations
==================
Though grammar rules and semantic actions are enough to write a fully
functional parser, it can be useful to process some additionnal
informations, especially symbol locations.
The way locations are handled is defined by providing a data type,
and actions to take when rules are matched.