Do you want to create robust and composable abstractions? Most people who are learning functional programming learn how to build data transformation pipelines. Building algebraic abstractions is the next step, but there isn’t much literature on the topic outside of academia, so many remain stuck at data transformation.
Eric Normand shares an iterative process to define the essence of a domain and build composability into its core and then demonstrates how to apply this process to the Processing graphics library to develop a composable vector graphics system. You’ll discover the difference between Newtonian-style abstractions and Aristotelian-style abstractions and learn a design process for developing an algebraic abstraction that can compose and easily express solutions (Newtonian style), elaborate a physical metaphor, describe the meaning of your metaphor as mathematical statements, construct the meaning using constructs from the language, and implement the abstraction by refactoring the meaning.
Eric Normand is a longtime functional programmer. He speaks, teaches, and consults about functional programming, with the mission of making functional programming more accessible to everyone. You can learn functional programming from him at PurelyFunctional.tv and read his thoughts in The PurelyFunctional.tv Newsletter. If you visit him in New Orleans, you can meet his wife and daughter. He’ll even make you some gumbo if you tell him you’re coming.
©2018, O'Reilly Media, Inc. • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • firstname.lastname@example.org