There are many other Go packages that provide the high-order functions (HOF) that we've come to expect when writing declarative code for manipulating collections. They typically use empty interfaces and reflection, which have negative performance impacts. A well known HOF implementation is Rob Pike's Reduce
package (see https://github.com/robpike/filter) where he states his preference for using for loops and clearly states, don't use this.
Learning Functional Programming in Go
By :
Learning Functional Programming in Go
By:
Overview of this book
Lex Sheehan begins slowly, using easy-to-understand illustrations and working Go code to teach core functional programming (FP) principles such as referential transparency, laziness, recursion, currying, and chaining continuations.
This book is a tutorial for programmers looking to learn FP and apply it to write better code. Lex guides readers from basic techniques to advanced topics in a logical, concise, and clear progression.
The book is divided into four modules. The first module explains the functional style of programming: pure functional programming, manipulating collections, and using higher-order functions. In the second module, you will learn design patterns that you can use to build FP-style applications. In the next module, you will learn FP techniques that you can use to improve your API signatures, increase performance, and build better cloud-native applications. The last module covers Category Theory, Functors, Monoids, Monads, Type classes and Generics.
By the end of the book, you will be adept at building applications the FP way.
Table of Contents (21 chapters)
Title Page
Credits
About the Author
Acknowledgments
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
Free Chapter
Pure Functional Programming in Go
Manipulating Collections
Using High-Order Functions
SOLID Design in Go
Adding Functionality with Decoration
Applying FP at the Architectural Level
Functional Parameters
Increasing Performance Using Pipelining
Functors, Monoids, and Generics
Monads, Type Classes, and Generics
Category Theory That Applies
Miscellaneous Information and How-Tos
Index
Customer Reviews