Tcl (Tool Command Language) — määritelmä, ominaisuudet ja Tcl/Tk

Tcl (lausutaan "tickle" tai tee cee ell /ˈtiː siː ɛl/) eli Tool Command Language on pieni mutta monipuolinen tulkattava ohjelmointikieli. Tcl on suunniteltu yksinkertaiseksi oppia ja helppokäyttöiseksi, mutta samalla joustavaksi ja laajennettavaksi. Kielen perusyksikkö on komento: komentokutsu kertoo tietokoneelle, mitä tehdä, miten käsitellä arvoja tai miten tallentaa muuttuja. Tcl tukee monia ohjelmointiparadigmoja, kuten oliosuuntautuneen, imperatiivisen, funktionaalisen ja proseduraalisen tyylin.

Keskeisiä ominaisuuksia

  • Yksinkertainen syntaksi ja dynaaminen tyypitys — kaikki arvot käsitellään pääosin merkkijonoina, mutta niitä voidaan käyttää listojen ja numerolaskujen yhteydessä ilman eksplisiittistä tyyppimuunnosta.
  • Komennot ja lausekkeet — Tcl:n komento- ja substituutiojärjestelmä tekee skripteistä joustavia; komentojen tulosteita voi sijoittaa toisten komentojen argumenteiksi.
  • Laajennettavuus C:llä — Tcl:ää voidaan helposti laajentaa tai upottaa C-ohjelmaan, minkä takia sitä käytetään usein C:ssä tehtävien prototyyppien rakentamiseen.
  • Pakettijärjestelmä ja moduulit — Tcl:llä on pakettien latausmekanismi, joka helpottaa kirjastojen hallintaa ja erottelua.
  • Turvalliset tulkit (safe interpreters) — mahdollisuus ajaa skriptejä rajoitetussa ympäristössä.
  • Monialustatuki — Tulkkeja on saatavilla useille käyttöjärjestelmiin, joten sama Tcl-koodi voi toimia eri koneilla ja alustoilla.

Käyttötapauksia

Tcl soveltuu hyvin moniin tehtäviin: testiautomaatioon, skriptaukseen, prototypointiin, konfigurointiin ja sulautettuihin järjestelmiin. Koska Tcl on hyvin pieni ja helposti upotettava, sitä käytetään usein sulautetuissa järjestelmissä ja laitteissa, joissa resurssit ovat rajalliset. Tcl on myös suosittu piirisuunnittelun ja EDA-työkalujen skriptauskielenä sekä monissa kaupallisissa ja akateemisissa työkaluissa.

Tcl ja Tk — graafiset käyttöliittymät

Tcl yhdistetään usein Tk-kirjastoon graafisten käyttöliittymien luomiseksi; yhteisnimellä tätä kutsutaan Tcl/Tk. Tk tarjoaa yksinkertaisen ja tehokkaan tavan rakentaa ikkunapohjaisia käyttöliittymiä, ja se on yksi syy Tcl:n pitkäikäisyyteen. Monet ohjelmointikielet ja -ympäristöt tarjoavat sidonnat Tk:hen; esimerkiksi Tcl/Tk on osa normaalia Python-asennusta (Pythonin Tkinter-kirjasto käyttää Tk:ta).

Esimerkkikoodia

Alla muutama yksinkertainen Tcl-esimerkki, jotka havainnollistavat kielen syntaksia:

 # muuttujan asettaminen ja tulostus set nimi "Maija" puts "Hei, $nimi!"  # funktio (proc) ja silmukka proc summa {n} {     set s 0     for {set i 1} {$i <= $n} {incr i} {         incr s $i     }     return $s } puts [summa 5]  ;# tulostaa 15  # yksinkertainen Tk-ikkuna (vaatii Tk:n) package require Tk button .b -text "Klikkaa" -command {puts "Painettu"} pack .b 

Laajennukset ja integraatio

Tcl tarjoaa hyvän C-rajapinnan, jonka avulla ohjelmoijat voivat kirjoa uusia komentoja ja kirjastoja suoraan C:llä tai upottaa Tcl-tulkin muihin ohjelmiin. Tämä tekee Tcl:stä suositun valinnan ympäristöihin, joissa tarvitaan kevyttä mutta laajennettavaa skriptausta.

Yhteenveto

Tcl on helppo oppia ja monipuolinen kieli, joka sopii sekä pikaisiin prototyyppeihin että tuotantokäyttöön upotettuna osana suurempaa järjestelmää. Sen vahvuuksia ovat yksinkertaisuus, laajennettavuus ja monialustatuki. Yhdistettynä Tk:hon se tarjoaa myös nopean tavan rakentaa käyttöliittymiä.


 

Historia

Tcl:n loi John Ousterhout Kalifornian yliopistossa Berkeleyssä. Ousterhout voitti ACM Software System Award -palkinnon vuonna 1997 Tcl/Tk:n kehittämisestä.

Safe-Tcl on Tcl:n muoto, jonka tietyt osat on kytketty pois päältä, jotta se ei voi vahingoittaa sitä käyttävää tietokonetta. Nathaniel Borenstein ja Marshall Rose loivat Safe-Tcl:n. Safe-Tcl voi toimia vain tietyissä tiedostoissa, kuten sähköpostiviesteissä.


 

Esimerkkejä

Tcl-ohjelmoinnissa tyhjä välilyönti erottaa sanat toisistaan. Komennot lopetetaan siirtymällä uudelle riville tai puolipisteeseen:

word0 word1 word2 ... wordN

Ensimmäinen sana on aina komento, joka tulee Tcl:n kirjastosta:

commandName arg1 arg2 ... argN

Esimerkiksi komento puts saa tietokoneen näyttämään jotain:

panee "Hello, World!"

Tässä esimerkissä "Hello, World!" on merkkijono. Tcl lisää rivin loppuun erikoismerkin, jota ei voi nähdä. Tämä merkki käskee tietokonetta siirtymään uudelle riville komennon päätyttyä.

Tcl pystyy tekemään matematiikkaa ja monia muita asioita muuttujien avulla. Jotta muuttujaa voidaan käyttää, ohjelmoijan on asetettava sen arvo:

set variableA 1 set variableB 2

Kun muuttuja on asetettu, sitä voidaan käyttää ohjelman muissa osissa tai asettaa johonkin muuhun muuttujaan. Muuttujia voidaan käyttää matematiikan suorittamiseen:

set x 2 set y 4 set ans [expr $x+$y] puts "Vastaus on $ans." # Tietokone näyttäisi: "Vastaus on 6."

Komento expr käskee tietokonetta ratkaisemaan "lausekkeen" tai tässä tapauksessa yhtälön.


 

Helppoja komentoja

  • set tallentaa numeroita, sanoja tai kirjaimia muuttujaan. Sitä voidaan käyttää myös muuttujan sisällön muuttamiseen.
  • proc kertoo tietokoneelle, mitä uusi komento tekee (proseduuri).
  • if käskee tietokonetta tekemään kirjoitetun asian vain, jos jokin on totta.
  • while käskee tietokonetta tekemään sen, mitä on kirjoitettu, kunhan jokin on totta.
  • foreach käskee tietokonetta tekemään jotain jokaista muuttujien luettelon kohdetta varten.
  • break pysäyttää komennon suorittamisen. Tätä on hyvä käyttää, kun haluat päästä ulos silmukasta.
  • continue pysäyttää aktiivisen komennon, mutta antaa silmukan jatkua. Jos silmukka on while-silmukka, se alkaa alusta. Se antaa foreach- ja for-silmukan siirtyä ohjelman seuraavaan vaiheeseen.
  • return pysäyttää aktiivisen komennon ja silmukan ja palaa sitten takaisin proseduuriin arvolla.

 

Aiheeseen liittyvät sivut

  • Eggdrop
  • TclX
  • Luettelo ohjelmointikielistä
 

Kysymyksiä ja vastauksia

K: Mikä on Tcl?


V: Tcl (lausutaan "tickle" tai tee cee ell /ˈtiː siː ɛl/) on korkean tason ohjelmointikieli, jota voidaan käyttää moniin asioihin. Se on tehty niin, että se on helppokäyttöinen, mutta pystyy tekemään monia tehtäviä.

K: Millaiseen kieleen Tcl perustuu?


V: Tcl:n kieli perustuu komentoihin, jotka kertovat tietokoneelle, mitä tehdä tai miten tallentaa muuttuja. Se voi tehdä oliopohjaista, imperatiivista, funktionaalista tai proseduraalista tyyliä.

K: Miten Tcl:ää käytetään C:ssä?


V: Tcl:ää käytetään paljon C:ssä prototyyppien nopeaan luomiseen.

K: Onko tulkkia saatavilla eri käyttöjärjestelmille?


V: Kyllä, tulkkeja on saatavilla monille käyttöjärjestelmille, joten monet erilaiset tietokoneet voivat ajaa Tcl-koodia.

K: Miksi se on hyvä sulautettuihin järjestelmiin?


V: Tcl on hyvin pieni kieli, joten se sopii hyvin sulautettuihin järjestelmiin.

K: Mitä lyhenne "Tk" tarkoittaa?


V: Lyhenne "Tk" tulee sanoista Tool Command Language.

K: Onko Tk osa normaalia Python-asennusta ? V: Kyllä , kun se yhdistetään Tk:n kanssa, sen nimi on "Tcl/Tk" ja se on osa normaalia Python-asennusta.

AlegsaOnline.com - 2020 / 2025 - License CC3