You have many questions!
Comparing parsec (which is only one of many Haskell parser combinator libraries) to the Scala implementation of parsec
No one has made comparisons here, as the Scala code is fairly new, but check the documentation:
- http://hackage.haskell.org/package/parsec
- http://www.scala-lang.org/api/current/index.html#scala.util.parsing.combinator.Parsers
Note that Haskell has many other parser combinator libraries, if you're interested in this approach, e.g.
- attoparsec + attoparsec-iteratee
- polyparse
What are some strengths/weaknesses of Scala's implementation of parser combinators, vs Haskell's?
The Haskell code is more than a decade old, well understood, and there are many examples, lots of documentation and user cases. Scala's stuff is relatively new.
packrat parsing
packrat parsing is different entirely. The original packrat paper was developed in Haskell, but has since become more widespread.
Is there a webpage or some other resource that shows how different operators/functions/DSL-sugar from one language's implementation maps onto the other's?
No, but that would be cool. However, almost all(?) parser combinator libraries are based on the pioneering parsec implementation, so they share a lot with the original parsec.