More functional SeparatorPartParser