Tcl

Матеріал з Енциклопедія Драматика
Перейти до: навігація, пошук
Dor3.png

Допиши кілька слів зі свого досвіду
Ми дописуємо драматику разом і ця стаття потребує твоїх думок для повноти. Натисни "редагувати" згори сторінки чи розділу.

Gry-sloupo.jpeg

Стаття потребує доповнення!
Ця стаття засмучує наших слоупоків, бо навіть вони розуміють, що її давно вже треба доповнити усілякими корисними картинками та інформацією, або, можливо, видалити якусь недолугу хуйню ідіота і написати натомість щось толкове.

Tcl.png

Tcl Tool Command Language», тікль, ті-сі-ель, Tcl/Tk) — імперативна інтерпретована скриптова мова програмування. Майже завжди використовується разом з тулкітом Tk.

Короткий огляд[ред.]

Синтаксис[ред.]

Tcl має другий за дурістю синтаксис після Lisp серед усіх мов програмування. Уся їбонутість синтаксису проявляється у фігурно-дужко-філії. Типова програма на Tcl складається з опису алгоритму на 5% і фігурних дужок на 95%. Найпростіше синтаксис Тікля можна описати так:

command arg1 arg2

У читача може виникнути питання: «А де ж фігурні дужки?». А дужки використовуються для групування елементів синтаксису, тобто не так як в C, а зовсім йобнуто:

set liczba [gets stdin]
while { $liczba != 42 } { puts $liczba; set liczba [gets stdin] }

Фішки[ред.]

Однією з найбільших фішок Тікля є підтримка метапрограмування, що безумовно дуже доставляє. Також, оскільки мова - інтерпретована, вона підтримує динамічні структура даних: асоціативні масиви і інше. Також є всякі ніштяки типу програмування у функціональному стилі і інше. Все це дуже виділяє мову серед інших.

Інші елементи синтаксису[ред.]

Символ Його значення Приклад
$ Підстановка значення змінної puts $x
# Коментар до кінця рядка. Коментарі ігноруються під час транслювання коду set x 12 #це коментарій
[] Підстановка результату виконання команди у квадратних дужках set x [gets stdin] #присвоїть змінній х значення введене з клавіатури
"" Групування елементів з підстановкою значень змінних puts "b = $b"
{} Як вже було сказано, групування елементів. puts {Hello, world!!!}
\ Цитування керуючого символа puts "\$" #виведе "$"

Мани[ред.]

Присвоєння змінній значення[ред.]

Для цього використовується не знак "=", а команда set

set x 12 #присвоїть змінній x значення 12

Ввід/вивід[ред.]

Для виводу використовується команда puts:

puts "SHIT" #отаман вочевидячки каже, що результатом виконання цієї команди буде вивід на екран слова Shit

А для вводу використовується команда gets:

set x [gets stdin] #присовїть змінній х значення введене з клавіатури

Цикли[ред.]

Як і будь-якій мові, у Тіклі є 3 види циклів: for, foreach і while:

while {Якийсь вираз}{
    команди, що будуть виконуватися поки вираз у дужках істинний
}
for {set i 0} {$i < 16} {incr i} {
    #якийсь код
}
foreach number $numbers {
    set result [expr {$result + $number}]
}

Умовний оператор[ред.]

if {якийсь вираз} {
    #якийсь код
}

Процедури[ред.]

Для декларації процедур використовують команду proc:

proc ІД_процедури {аргументи} {
   #якийсь код
}

Приклади коду[ред.]

Hello, world![ред.]

puts "Hello, world!"

Факторіал[ред.]

proc ! x {expr {$x<2? 1: $x*[! [incr x -1]]}}

Числа Фібоначчі[ред.]

set fib1 0
set fib2 1
set s ""
for {set i 0} {$i < 16} {incr i} {
    lassign [list $fib2 [incr fib2 $fib1]] fib1 fib2
    append s "$fib1, "
}
puts "$s..."

Див. також[ред.]

Посилання[ред.]