Use immutable data structures (hamster) in parser