functor (Functional Programming): Something that can mapped over. Simple examples are arrays and the Option type. Must preserve identity and be composable. </>