Кодинг на TCL

Xakep, номер #030, стр. 030-062-1

Акакий Докучаев aka Forb (root@forbik.com)

http://k-r.com/info/common/photo.html

Покажем язык

Вообще, стало модно выбирать ники, состоящие из трех букв англицких. Типа GoN, XyZ, zLO, XEP, CuM и прочую шнягу. И вот данные "избиратели" часто занимаются кодингом, с гордостью заявляя: "Вы чё, я лична на дельфях флудер и порт сканер написал! Это разве не круто?". О, да, первое время можно кодить хоть на языке Word, но со временем надо подкачивать собственные знания, чтобы можно было раскинуть пальцы более понтовыми вещицами. Как раз для людей с тремя буквами я подогнал материал о трехбуквенном TCL-кодинге =).

Сценарии TCL ("Тикл") просты в обращении и могут заменить практически любой язык программирования. Гибкость в управлении переменными и функциями позволяет быстро добиться нужного результата. Пакет TCL интегрирован в Linux, а также существуют эмуляторы TCL под Windows9x/NT. Достаточно широко применяется в Eggdrop-управлении. Так что с тиклом ты сможешь писать эксклюзивные скрипты для ботов, не оставляя места стандартным болванкам !seen ;).

Если программить на TCL из-под *nix`a, то можно просто сменить свой Shell на "tclsh", который понимает лишь TCL-синтаксис, либо (это касается и пользователей Виндоуза) написать скрипт отдельным файлом и загрузить его командой "tcl source pathtofilename".

Принцип кода: переменные

Как водится, начну описалово принципа программирования на TCL с переменных. Переменная задается ключевым словом "set", за которым следуют ее имя и значение. Причем, значение может быть задано преждевременными вычислениями (приятно, что бывает нечто преждевременное, кроме эякуляции =). Рассмотрим пример:

set vasya lamer;

set xakep 31337;

set super "super puper string";

set stat [expr 3000*2/3];

Как видно из примеров, для tcl-кода не нужно оговаривать тип переменной, а плавающее значение можно прикрутить, прописав его в блоке, ограниченном квадратными скобками []. Значения string`ов должны заливаться в двойные кавычки. Все строки оканчиваются точкой с запятой, исключение составляют комментарии, которые стартуют с символа "#".

Обращение к переменкам осуществляется с помощью значка "$". И что же будет?

set xakep [expr $xakep/3];

Для вывода информации (а также переменных) на экран используется оператор puts.

puts $xakep;

puts "This is very smart string";

puts [expr 2000*10];

Символьные

В TCL стоит как следует попариться над символьными переменными. Для них создано много операторов и функций. Рассмотрим самые полезные из них:

append: добавляет строку к уже существующей строке. (Звездочка к звездочке, косточки в ряд... :)

set lamer "Vasya Pupkin";

append lamer " - lamer";

set xakep "super hacker";

append lamer "and " $xakep "it`s me!";

puts $lamer;

В результате должно получиться нечто:

Vasya Pupkin - lamer and super hacker it`s me! Результат также демонстрирует то, что результат не всегда бывает правильно написан по-английски =). Поэтому, кодеры, учите английский и избегайте тавтологии, чтобы не быть столь умными, как я. 8)

String - набор операторов для работы с символьными переменками, включающий:

Содержание  Вперед на стр. 030-062-2

ttfb: 3.0109882354736 ms