Calculate Euler's totient function Background

Euler's totient
function φ(n) is defined as the number of whole numbers less than or equal to n that are relatively prime to n,
that is, the number of possible values of x in 0 &lt; x &lt;= n for which
gcd(n, x) == 1.
We've had
a
few totient-related challenges
before, but never one which is just calculating it.

The mapping of the totient function onto the whole numbers is OEIS A000010.

Challenge

Given an integer n &gt; 0, calculate φ(n).
You may take input through
command-line arguments,
standard input,
function arguments,
or anything else reasonable.
You may give output through
standard output,
return values,
or anything else reasonable.
Anonymous functions are acceptable.
You may assume that the input will not overflow your natural method of storing integers, e.g. int in C, but you must support inputs up to 255.
If your language has a built-in totient function, you may not use it.

Examples

φ(1) =&gt; 1
φ(2) =&gt; 1
φ(3) =&gt; 2
φ(8) =&gt; 4
φ(9) =&gt; 6
φ(26) =&gt; 12
φ(44) =&gt; 20
φ(105) =&gt; 48


Shortest answer in bytes wins. If your language uses an encoding other than UTF-8, mention it in your answer.
Mathematica, 27 22 bytes

Range@#~GCD~#~Count~1&amp;


An unnamed function that takes and returns an integer.

Not much to explain here, except that @ is prefix notation for function calls and ~...~ is (left-associative) infix notation, so the above is the same as:

Count[GCD[Range[#], #], 1] &amp;