Tcl (ohjelmointikieli)

Wikipediasta
Siirry navigaatioon Siirry hakuun
Tämä artikkeli käsittelee ohjelmointikieltä. Sanan muut merkitykset on lueteltu täsmennyssivulla.
Tcl
Tyypitys dynaaminen tyypitys
Yleinen suoritusmalli tulkattava
Kehittäjä John Ousterhout
Vakaa versio 9.0.1 ()[1]
Käyttöjärjestelmä alustariippumaton
Verkkosivu https://www.tcl-lang.org/
Uutisryhmä comp.lang.tcl

Tcl (engl. Tool Command Language) on John Ousterhoutin kehittämä tulkattava ohjelmointikieli. Sen nimi voidaan lausua englanniksi ”tickle”. Tcl:ää pidetään helposti opittavana, mutta silti tehokkaana työvälineenä oikeissa käsissä. Tcl:ää käytetään yleensä nopeiden prototyyppien luomiseen, ohjelmien komentosarjakielenä, graafisissa käyttöliittymissä ja testauksessa. Tcl on vuoden nuorempi kuin Perl.

Kieli syntyi John Ousterhoutin työkaluista mikropiirien suunnitteluun Berkeleyn yliopistossa 1980-luvun alussa. Ousterhout ja hänen oppilaansa tekivät useita interaktiivisia työkaluja mikropiirien suunnitteluun, joissa jokaisessa tarvittiin komentokieli. Kehityksen kohteena olivat työkalut eikä niiden komentokieli, josta johtuen kielet olivat heikkoja.[2]

Syksyllä 1987 Ousterhout oli sapattivapaalla, jolloin syntyi ajatus sulautettavasta tulkattavasta kielestä, joka voitiin toteuttaa uudelleen käytettävänä ohjelmakirjastona. Tulkki tarjoaisi yleiset ominaisuudet kuten muuttujat, kontrollirakenteet ja proseduurit. Kieltä käyttävä sovellus lisäisi omat ominaisuutensa kieleen laajennuksina, jolloin kieltä voisi käyttää sovelluksen ohjaamiseen. Tcl syntyi tästä käyttötarkoituksesta.[2]

Ousterhout aloitti työn kielen parissa palattuaan sapattivapaalta alkuvuodesta 1988.[2]

Vuonna 2024 julkaistu versio 9.0 lisäsi 64-bittisen tuen.[3]

Tcl:n ominaisuuksia ja ajatusmalleja

[muokkaa | muokkaa wikitekstiä]
  • Kielen rakenteet ovat komentoja kuten kaikki muutkin
  • Kaiken voi dynaamisesti määritellä uudelleen tai korvata uudella
  • Kaikkea voi käsitellä merkkijonona
  • Erittäin yksinkertainen syntaksi — vain 11 sääntöä
  • Helposti laajennettavissa C:llä, C++:lla, ja Javalla.
  • Tulkattu kieli — koodia voidaan luoda ja muokata dynaamisesti
  • Täysi Unicode-tuki
  • Käyttöjärjestelmästä riippumaton
  • Läheinen yhteys graafiseen käyttöliittymään Tk:n kautta.

Kommentit merkitään joko rivin alussa "#"-merkillä tai komennon jälkeen ";"-merkillä.[4]

Hello world -esimerkki:

puts "Hei, maailma!"

Muuttujien käsittely:[5]

set X "This is a string"
set Y 1.24

puts $X
puts $Y

Tcl tukee ehtolauseita kuten useimmat kielet.[6] Tcl:n switch-lause tukee merkkijonojen vertailua.[7]

TCL ja olio-ohjelmointi

[muokkaa | muokkaa wikitekstiä]

Vaikka TCL:ssä itsessään ei ole olio-ohjelmointirajapintaa, sitä voi laajentaa tukemaan uusia ominaisuuksia tarpeen mukaan. Kieleen on tehty monia C-laajennuksia, jotka mahdollistavat olio-ohjelmoinnin, esimerkiksi XOTcl ja incr Tcl. Myös kokonaan TCL:llä tehtyjä olioperustaisia laajennuksia on. Tästä esimerkkinä Snit.

TCL:ää käyttäviä ohjelmistoja

[muokkaa | muokkaa wikitekstiä]

TCL:ää käyttäviä ohjelmia ovat aMSN, eggdrop, x-chat, BitchX ja Expect[8].

  • Flynt, Clif: TCL/TK : a developer’s guide. (3rd ed.) Amsterdam: Elsevier, 2012. ISBN 978-0-12-384717-1 (englanniksi)
  1. [TCLCORE] Tk 9.0.1 RELEASED, (viitattu ). Tieto on haettu Wikidatasta.
  2. a b c John Ousterhout: The birth of Tcl tcl.tk. Viitattu 8.11.2022. (englanniksi)
  3. Liam Proven: After 27 years, Tcl/Tk 9 finally arrives with 64-bit power and Zip file magic theregister.com. 2.10.2024. Viitattu 3.10.2024. (englanniksi)
  4. Simple Text Output tcl.tk. Viitattu 10.3.2023. (englanniksi)
  5. Assigning values to variables tcl.tk. Viitattu 10.3.2023. (englanniksi)
  6. Numeric Comparisons 101 - if tcl.tk. Viitattu 10.3.2023. (englanniksi)
  7. Textual Comparison - switch tcl.tk. Viitattu 10.3.2023. (englanniksi)
  8. Libes, Don: Exploring Expect: A Tcl-based toolkit for automating interactive programs. O'Reilly., 1996. ISBN 978-1-56592-090-3 Teoksen verkkoversio.

Aiheesta muualla

[muokkaa | muokkaa wikitekstiä]