LINUX.ORG.RU

proc A {a} { proc B {} { list eval $a } }

Но это не замыкание конечно ни разу. Настоящие замыкания в тикле не сделаешь. Хотя можно во многих случаях их эмулировать. См. http://wiki.tcl.tk/3330

Hjorn
()
Ответ на: комментарий от Hjorn

Так $a все равно ж недоступно будет в дальнейшем?

placement_new ★★
() автор топика
Ответ на: комментарий от placement_new
proc abc {} { puts "Hi, Jack!" }

proc A {a} {
    set b_body [subst -nocommand {
        eval $a
        puts !!!
    }]
    proc B {} $b_body
}
Hjorn
()
Ответ на: комментарий от placement_new

>а как uplevel тут поможет?

а это смотря чему надо помогать. uplevel это как бы тоже замыкание, просто не лексическое

jtootf ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.