/**
 * Mart Lubbers, s4109503
 * Camil Staps, s4498062
 */

module Origami

import StdEnv

sum` = foldr (+) 0
prod` = foldr (*) 1
flatten` = foldr (++) []
length` = foldr (\x l=l+1) 0
reverse` = foldl (\xs x=[x:xs]) []
takeWhile` p = foldr (\x xs=if (p x) [x:xs] []) []
maxList` [x:xs] = foldr max x xs