implement Parser .recursive? and rework .to_s