Posted to tcl by oldlaptop at Fri Oct 24 22:40:48 GMT 2025view pretty
proc perpetrate_evil {{victim ::}} {
array set $victim {}
trace add variable $victim {read write} [list ::evil_672 $victim]
}
proc evil_672 {victim empty expr op} {
if {$op eq {write}} {
return -code error "Evil TIP672 bans writes to the empty-named array."
}
set [set victim]($expr) [uplevel 1 [list expr $expr]]
}
# $ tclsh9.0
# % info patchlevel
# 9.0.3
# % source evil-tip672.tcl
# % perpetrate_evil
# % puts $(1 + 1)
# 2