Здравствуйте, дамы и господа.
Разбираю код на tcl. Кусок кода понять не могу, нужен совет.
# Printing the window size
proc plotWindow {tcpSource file} { # имена переменных использующихся внутри процедуры
global ns # объявляем переменную ns как “глобальную”,
# влияющую на внешние переменные
set time 0.01 # переменной time присваиваем значение 0.01
set now [$ns now] # обращение к симулятору с запросом о текущем времени
# и присвоением его значания переменной “now” [3, стр. 34]
set cwnd [$tcpSource set cwnd_] # ЗДЕСЬ НЕПОНЯТНО!!!!!!!!!!!!!!!!!!!!!!!!!!!
puts $file "$now $cwnd"
$ns at [expr $now+$time] "plotWindow $tcpSource $file" }
$ns at 1.1 "plotWindow $tcp $windowVsTime2"
Квадратные скобки. При появлении в поле команды открывающей квадратной скобки выполняется подстановка команды. Все символы внутри скобок считаются командой, и она исполняется немедленно. Затем результат этого исполнения подставляется вместо текста в скобках. Например, рассмотрим команду “set a [set b]”. Когда у команды set задан только один аргумент, тогда это есть имя переменной, и set возвращает значение этой переменной. В этом случае, если переменная b имеет значение ‘foo’, то предыдущая команда эквивалентна команде “set a foo” [4].