Instead of needing digestStrLen, could you just `.takeWhile(_ != '-')`? That feels like it would be more robust to me.