PC Help

 Към заглавната страница на PC HelpТърсене


Уроци

 

Малко информация за TCL

За тези, които са решили за се занимават с Tcl, тук съвсем накратко съм описал особеностите му сравнение с другите езици.

Искам да представя макар и кратко на тези които тепърва са решили да се занимават с програмиране един много лесен и приятен за изучаване език - TCL. Чувал съм доста програмисти да казват, че това не е език, а някакво подобие на такъв. Лично аз съм на съвсем друго мнение и затова мисля да го представя с една 
кратка за тази цел цел статия но целта ми е горе долу тези които искат да се занимават с него да добият първоначална представа за езика. Преди всичко ще кажа, че интерпретатор за TCL има за Windows, Macintosh и Linux. Това значи, че можете да напишете скрипта си под Linux и да го пуснете под Windows стига машината да има интерпретатор. Tool Command Language (произнася се "тикъл", но доста хора го наричат "ти си ел") е създаден през 1987 г. от Джон Остерхоут. Първоначално създаден за настройка на приложения той се превръща в самостоятелен програмен език. Най популярните приложения които го разширяват това са TK и Expect. С първото можете лесно да създавате графичен интерфейс за вашите програми, а с второто лесно комуникирате с интерактивни програми от рода на FTP и TELNET. TCL е интерпретаторен език което означава, че го стартирате с помощта на неговия команден интерпретатор tclsh. TK има свои интерпретатор wish. Значително преимущество на езика и неговите приложения е фактът, че те са напълно съвместими с езика за програмиране С и библиотеките на Tcl могат да бъдат директно вмъквани в С програми. Обикновено вашата дистрибуция на Linux има включени TCL и TK интерпретатори, ако ли не така или е по-стара версия (моята е 8.0 и затова съм си изтеглил 8.3) можете да се снабдите с такава на dev.scriptics.com. Характерни особености на Tcl това са глобалните и локални променливи, списъците и начина на присвояване на стойност на променлива. Използват се и процедури които за мен са аналог на подпрограмите в другите езици. За да присвоите стойност на променлива се използва командата "set", за разлика то другите езици където се използва знакът равно както например в Perl. Пример: 

set a 1

Създаването на процедури също е най-често използваното средство в TCL. За тази цел се използва командата "proc" следвана от името на процедурата, някакво условие ако има такова и тялото на самата процедура заградено във фигурни скоби. Имената са съвсем произволни и могат да се използват като команди на езика в рамките на скрипта където се намират. Пример:

proc simo {} {
global a b
if {$a == 1} {
set b 1
}
}

Тук simo е името на процедурата първата двойка фигурни скоби определят условието в случая няма такова, и след това следва тялото на процедурата което се състои от един условен оператор. Както казах по нагоре характерна особеност за Tcl за глобалните и локалните променливи. За да може да се използва дадена променлива извън процедурата е важно тя да бъде указана като глобална. В противен случай компютърът ще реши, че тя е само за рамките на самата процедура. За да укажете една променлива като глобална използвате командата "global", следвана от променливите който ще са глобални. Вижте примера по-горе. Другото нещо което е характерно за езика това са списъците. Те представляват група то думи и/или числа заградени във фигурни скоби. За създаването на списък се използва "set" Пример:

set ime {
"simo"
"elisaveta"
"tcl"
21
133
}

Тук името на списъка се явява думата ime, а думите и цифрите оградени във фигурните скоби за елементите на списъка. Не е задължително да ги изписвате по този начин но с цел да е по-прилежно подредена програмата ви препоръчвам този. Командите за опериране със списъци са доста и затова ще опиша само действието на някои от тях.

lindex - връща стойността на индексирания елемент (имайте предвид, че компютъра чете от 0 не от 1)
llength - връща броя на елементите в списъка
lrange - връща част от списъка в определен ка от първи и последен елемент
linsert - Вмъква нов елемент след индекса
Lreplace - заменя индексирания елемент с друг
lappend -добавя нова стойност към списъка
lsort - Сортира списък по азбучен ред или числена стойност.

Има и други оператори за за списъци но тези най-често се използват за прости приложения. Други са например split, join, list. Както казах съвсем не е достатъчна една статия тук за да научите този прекрасен за начинаещи език, но тъй като поне аз не съм виждал никъде на пазара книга посветена на него реших да напиша това малко описание за него. Езикът прилича доста на Perl и затова няма да се спирам да условните оператори, както и тези за създаване на цикъл тъй като разликата им не е голяма. На адрес tcl.hit.bg/down/TclTkElRef803.pdf можете да си изтеглите един PDF файл, в който всички команди на Tcl и Tk са подробно обяснени. За потребителите на Linux е още по лесно, достатъчно е да напишете man <команда>, например man if и описанието ще се изведе на екрана.

Назад


Webmaster