Going Higher

35:57 2199 views 100% Published 4 years ago

This presentation was given as part of Lambda World 2017 by Alejandro Serrano.


-https://www.47deg.com/events for more details


In functional programming we often use phrases starting with 'higher'. Each higher thingy generalizes the notion of thingy, allowing more abstractions and thus more code reuse. In this talk we shall look at three different 'higher's:
Higher-order functions, which gives us the power of treating a function from values to values as yet another value. From simple functional patterns such as map and folds, to more complex ones such as catamorphisms, all rely on this secret sauce.
Higher-kinded types, which gives us the power of speaking of a type constructor, such as List, in the same way as we talk of a ground type such as List. Talking about functors and monads intrinsically uses this ability from our languages.
Higher-rank (and impredicative) polymorphism, which gives us the power of using quantification anywhere in our types. As crazy as it sounds, higher-rank types are basic to model lenses in a nice way.

Watch on YouTube

Lambda World 2017

Lambda World 2017

From 26/10/2017 to 27/10/2017 in Cádiz, Spain