Posted to tcl by dgp at Thu Jun 13 14:50:03 GMT 2019view pretty

$ cat evtest.tcl
namespace eval provide {
    proc irk args {puts BROKEN!}
    proc every {ms script} {
        puts $script
        try $script
        after $ms [list after idle [namespace code [info level 0]]]
    }
    namespace export every
}
namespace eval consume {
    namespace import ::provide::every
    rename every irk
    irk 1000 {puts TICK}
}
vwait forever

$ tclsh evtest.tcl
puts TICK
TICK
BROKEN!