closure :: fn() do value := "Closure"; internal :: fn() do print value; return value; end return internal; end internal := closure(); internal(); a := "Global"; b := a; c := b; c = b = a; d := c = b = a; do showA :: fn() do print a; end showA(); a := "Local"; showA(); end