le, if we write the identity function in Ocaml, we get:</p>
<pre><code class="language-ocaml"> fun x -&gt; x ;;
- : 'a -&gt; 'a = &lt;fun&gt;
</code></pre>
<p>This is equivalent to say, for any type <code>'a</code>, then <code>fun x -&gt; x</code>  (the Ocaml version of <code>(fn [x] x)</code>) returns a value of the same type <code>'a</code>. Here, the <code>'a</code> is a <em>type variable</em>, a placeholder for a “real” type, e.g. <code>bool</code>, <code>int</code>, etc.  Curry typing is sometimes 