exercise 5.7 map implemented
exercise 5.7 filter implemented
exercise 5.7 append implemented