Elm Functions Are Curried
In Elm, everything is about functions. Let’s explore Elm function curried property. This post is part of the functional language series, and it is based on a remarkable book Programming Elm Build Safe and Maintainable Front-End Applications by Jeremy Fairbank.
In the image above, we have
Basketball.letter the function with three parameters, where
second are functions. Elm has a feature where you do not need immediately set for Basketball.letter function all three parameters. This is called
partial applying of function parameters.
We first call
Basketball.letter with the
Basketball.trials function as the first parameter, and the anonymous function where we for every Integer always return String that explains who is
drazen. As we do not set the third parameter,
drazen is a new function that accepts Integer and returns String.
other we crate function with
Basketball.position functions that we used in Why Elm does not have statements.
other are functions that are curried from other functions.
- curried functions
- partial argument application
- those two concepts are based on functional programming principles. Do not despair if they do not immediately stick with you. You will grasp them after you start using those concepts in your application that solves a real-world problem.
Originally published at https://blog.tentamen.eu on June 24, 2020.