April 2017
Intermediate to advanced
316 pages
9h 33m
English
Function currying translates a single function with multiple arguments into a series of functions each with one argument. Let's examine an example.
Suppose that we have a function that combines firstName and lastName to return the full name as follows:
func extractFullName(firstName: String, lastName: String) -> String { return "\(firstName) \(lastName)" }
This function could be translated into a curried function as follows:
func curriedExtractFullName(firstName: String)(lastName: String) -> String { return "\(firstName) \(lastName)" }
As seen from this example, we replace the comma with ) ( parentheses. So now we can use this function as follows:
let fnIncludingFirstName = curriedExtractFullName("John") let extractedFullName ...Read now
Unlock full access