Refactoring: Rename the local vars
Remove the not-followed-by function because it isn't provided by attoparsec
Rename the or-parser and export it
Refactor the map-result parser by using bind
Add the primitive funcations for reliavility