CでYaccとか使ってみれば想像できるようになるかも