Something
public text v1 · immutable Objective Caml version 3.10.0
# let id a = a;;
val id : 'a -> 'a = <fun>
# let di = id id;;
val di : '_a -> '_a = <fun>
# di 1;;
- : int = 1
# di 1.;;
This expression has type float but is here used with type int
# let di x = (id id) x;;
val di : 'a -> 'a = <fun>
# di 1;;
- : int = 1
# di 1.;;
- : float = 1.