• A ff ected by when and how many times they are called. • Calculations - functions without any side e ff ects • Given the same input, returns the same output. • Data - facts about events • Immutable in functional programming languages • Can be immutable in object-oriented programming languages