# 2008/11/14 03:09 @ root
proc map {varname mylist body} {
upvar 1 $varname var
set res {}
foreach var $mylist {
lappend res [uplevel 1 $body]
}
return $res
}
# e.g.
map x {1 2 3 4 5} {expr $x*$x}
proc repeat {n script} {
while {[incr n -1] >= 0} {
uplevel 1 $script
}
}
# e.g.
set a 10
repeat 2 {puts $a}