The document discusses key concepts in functional programming including functions as first-class citizens, high order functions, immutability, lambda/closure/anonymous functions, currying, and monads. Some benefits mentioned are writing less code to accomplish more, simplicity, and suitability for algorithms and calculations. Core FP principles discussed are lambda calculus, high order functions, and immutability without side effects.