Shadowing- und Nested-Funktion
Ich möchte verstehen, wie der Mechanismus von Shadowing und Nested funktioniert. Zum Beispiel:
let func y =
let dup y = y + y
let z = dup y
let dup y =
let dup z =
let y = y * z
y
let z = y
y
dup z + z;;
val func : int -> int
> func 3;;
val it : int = 12
Kann mir jemand erklären, was hier passiert?