Using 'recursive descent parser'