Use functional approaches where appropriate.