Bowling calculates the total score directly on the input string and does not have a separate parser step (to convert into Scala data structures).
The parser combinator ScoreSheetParser returns a case class ScoreSheet with a list of frames and a bonus list.
ScoreCalculator uses the ScoreSheet data structure to calculate the total score.
specs2 unit tests are available for all classes.
For a different solution in Scala you can look at the BowlingScoreCalculator of Sebastian Nozzi.