Why `Parser` ?