December 2016
Intermediate to advanced
841 pages
17h
English
When you ask a developer what the definition of a function is, he would probably answer something like "something that does something with some arguments". Mathematicians have a formal definition for a function:
A function is a relation where an input has exactly one output.
This means that a function should always return the same output for the same input. Functional programming (FP) uses this mathematical definition. The following code would violate this definition:
let x = 1;
function f(y: number) {
return x + y;
}
f(1);
x = 2;
f(1);
The first call to f would return 2, but the second would return 3. This is caused by the assignment to x, which is called a side effect. A reassignment to a variable or a property is called ...
Read now
Unlock full access