mps for FP in Scala