Python is not a functional programming language, but it is a multi-paradigm language that makes functional programming easy to perform, and easy to mix with other programming styles. In this paper, David Mertz, a director of Python Software Foundation, examines the functional aspects of the language and points out which options work well and which ones you should generally decline.Mertz describes ways to avoid Python’s imperative-style flow control, the nuances of callable functions, how to work lazily with iterators, and the use of higher-order functions. He also lists several third-party Python libraries useful for functional programming.Topics include:Using encapsulation and other means to describe "what" a data collection consists of, rather than "how" to construct a data collection Creating callables with named functions, lambdas, closures, methods of classes, and multiple dispatch Using Python’s iterator protocol to accomplish the same effect as a lazy data structure Creating higher-order functions that take functions as arguments and/or produce a function as a result
AI Reading Assistant
Whole-book reading guide from stratified index samples; jump to passages in the text
Tags
Text Preview (First 20 pages)
Registered users can read the full content for free
Register as a Gaohf Library member to read the complete e-book online for free and enjoy a better reading experience.
Generating text preview…
Loading comments...
Reply to Comment
Edit Comment