Functional Programming Homework Finished