Översikt
Tcl (uttalas ofta "tickle" eller "tee-cee-ell") står för Tool Command Language och är ett lättviktigt, tolkat skriptspråk avsett för inbyggnad och snabb utveckling. Språket formulerar program som en serie kommandon där varje element normalt behandlas som en sträng. Den minimalistiska kärnan gör Tcl lämpat som konfigurationsspråk, för testautomation och som ett inbäddningsvänligt gränssnitt mellan programmoduler. För grundläggande introduktion och officiell dokumentation, se Tcl-dokumentation.
Egenskaper och språkstruktur
Tcl kännetecknas av enkel syntax, dynamisk typning och ett textcentrerat designparadigm: nästan allt är en sträng och kommandon parsas vid körning. Språket stödjer flera programmeringsstilar — proceduriell programmering är vanligast men man kan även tillämpa funktionella mönster, imperativ kod eller objektorienterade konstruktioner med tillägg som TclOO. Vanliga byggstenar inkluderar variabler, listor, arrayer, kanaler för I/O samt ett händelseloop för GUI- och nätverksapplikationer.
Teknisk integration och förlängbarhet
Tcl är byggt för att vara enkelt att binda till C och andra systemnivåbibliotek vilket gör det till ett populärt val när man behöver ett skriptspråk inbäddat i ett större program. Ett vanligt arbetsflöde är att exponera interna funktioner som Tcl-kommandon via ett C API och därigenom ge användare eller automatiseringsskript åtkomst till applikationens funktioner. För information om hur man binder Tcl mot C, se C-integration och exempel på prototyper och snabb utveckling prototypning.
Historia och utveckling
Tcl utvecklades av John Ousterhout i slutet av 1980-talet och tidigt 1990-tal som ett enkelt och flexibelt språk för att länka verktyg och skapa användargränssnitt på ett snabbt sätt. Språket har sedan dess vuxit genom tillägg och tredjepartspaket och har en stabil kärna som kompletteras av moduler för olika behov: grafiska bibliotek, nätverksstöd, testverktyg och mer. Läs mer om historiken och utvecklingsmodeller Tcl-historik och implikationer för användning i olika system operativsystemsstöd.
Användningsområden och exempel
Tcl används ofta för automatisering, testskript (t.ex. med extensionen Expect), konfigurationsfiler, prototypframtagning och i inbyggda system där resurserna är begränsade. Kombinationen med Tk, ett bärbart GUI-bibliotek, ger upphov till det välkända Tcl/Tk-ekosystemet som fortfarande används för snabba verktyg och små grafikbaserade hjälpprogram. Notera att Tk också används via bindings i andra språk, exempelvis genom Pythons Tkinter; se Tk and Python och mer om Tk Tk-översikt. För automation och test finns specifika tillägg som Expect och andra verktyg tolk-implementationer.
Skillnader, styrkor och begränsningar
Styrkorna hos Tcl är dess enkelhet, inbäddbarhet och breda plattformsstöd — tolkar finns för många system vilket gör att samma skript kan köras över olika maskiner. Den lätta kärnan gör det också lämpligt för system med begränsade resurser. Begränsningar rör främst språkets string-orienterade natur, som kan kännas ovant jämfört med språk med starkare typning eller mer moderna makro- och paketlösningar. För säker exekvering i delade miljöer finns mekanismer för att skapa säkra tolkar och sandboxar; se resonemang om säkerhet och distribution variabler och säkerhet och plattformskompatibilitet.
- Resurser och bibliotek: inbyggda system-användningsfall
- Diffusion och community: communityprojekt
- Fördjupning och handledning: officiell dokumentation och introduktioner
Sammanfattningsvis är Tcl ett verksamt, enkelt och flexibelt skriptspråk som fortfarande fyller nischer där snabb utveckling, enkel inbäddning och plattformsoberoende är viktigare än modern syntaktisk sötma. För att komma igång rekommenderas att testa exempel, läsa kärndokumentationen och utforska Tk om grafiskt gränssnitt behövs. Ytterligare resurser och implementeringsdetaljer finns via länkarna ovan och i öppna arkiv för paket och tillägg paketöversikt och fördjupning.