Когда я начал использовать комбинаторы синтаксического анализа, моей первой реакцией было чувство освобождения от того, что казалось искусственным различием между синтаксическим анализом и лексингом. Внезапно все было просто разбор!
Однако недавно я наткнулся на эту публикацию на codereview.stackexchange, иллюстрирующую кого-то, кто вновь подтверждает это различие. Сначала я думал, что это было очень глупо с их стороны, но затем тот факт, что в Parsec существуют функции для поддержки такого поведения, заставляет меня задаться вопросом.
Каковы преимущества / недостатки синтаксического анализа уже лексированного потока в комбинаторах синтаксического анализа?