Elm Functions Are Curried

Image for post
Image for post

TL;DR

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 first and 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.

Image for post
Image for post

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.

In other we crate function with Basketball.trials and Basketball.position functions that we used in Why Elm does not have statements. drazen and other are functions that are curried from other functions.

Remember

  • curried functions

Originally published at https://blog.tentamen.eu on June 24, 2020.

Written by

Founder of Tentamen, software testing agency.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store