Solutions to Functional programming course assignments