Movatterモバイル変換


[0]ホーム

URL:


Vai al contenuto
WikipediaL'enciclopedia libera
Ricerca

Tcl

Da Wikipedia, l'enciclopedia libera.
Disambiguazione – Se stai cercando altri significati, vediTCL.
Tcl
linguaggio di programmazione
AutoreJohn Ousterhout
Data di origine1988
Ultima versione9.0.3 (13 novembre 2025)
Paradigmiprogrammazione multi-paradigma,programmazione orientata agli oggetti,programmazione procedurale,programmazione imperativa,programmazione funzionale eprogrammazione a eventi
Tipizzazionedebole
Estensioni comunitcl e tbc
Influenzato daAwk eLisp
Ha influenzatoPHP,PowerShell, Tea
Implementazione di riferimento
Licenzalicenza BSD
Sito webtcl.tk
Modifica dati su Wikidata ·Manuale

Tcl (acronimo diTool Command Language[1], pronunciatickle[2]) è unlinguaggio di programmazione creato daJohn Ousterhout. È unlinguaggio di scriptingmultipiattaforma, considerato di facile apprendimento e utilizzato nelrapid application development.[3][4]

Caratteristiche

[modifica |modifica wikitesto]

Le caratteristiche del linguaggio TCL comprendono:

  • Qualsiasi cosa è un comando, comprese le strutture del linguaggio. Queste ultime utilizzano lanotazione polacca detta anchenotazione prefissa.
  • Qualsiasi cosa può essere ridefinita o sovrascritta dinamicamente.
  • Tutti i tipi di dato possono essere manipolati come stringhe, compreso il codice.
  • Utilizza regole sintattiche estremamente semplici.
  • Possiede un'interfaccia a eventi per isocket e ifile.
  • Facilmente estendibile tramite un'API che permette di collegare all'interprete oggetti scritti inC,C++,REXX eJava.
  • Completo supporto per l'Unicode già dal 1999.
  • Indipendente dalla piattaforma. L'interprete è già stato portato suWin32,Unix,Mac, e altri.
  • Buona integrazione con il sistema a finestre grazie all'estensione Tk.

Esempi

[modifica |modifica wikitesto]

Per unHello world il codice è

puts"Hello World!"

Semplicissimo esempio di codice:

puts"dammi un numero"getsstdinnumeroputs"Il quadrato è [expr {$numero * $numero}]"

Un altro esempio in stile funzionale:

procfilter{listscript}{setres{}foreache$list{if{[uplevel1$script$e]}{lappendres$e}}setres}

L'elementoe è incluso nella listalist? Se sì ritorna 1, altrimenti 0.

procin{liste}{expr{[lsearch-exact$list$e]>=0}}

Elementi comuni di due liste, ossia insieme intersezione:

%filter{abc}{in{bcd}}bc

Tk

[modifica |modifica wikitesto]

L'estensioneTk è un insieme di strumenti per scrivereGUI (untoolkit diwidget) implementato dallo stesso autore di Tcl. Può essere usato anche in combinazione ad altri linguaggi comePerl,Python,Ruby,Lisp e altri, ed è stato portato su varie piattaforme qualiGNU/Linux,AppleMacintosh,Unix eWindows.

Esempio Tk, un orologio numerico in tre righe:

packagerequireTkprocevery{msbody}{eval$body;after$ms[infolevel0]}pack[label.clock-textvartime]every1000{set::time[clockformat[clocksec]-format%H:%M:%S]}

Note

[modifica |modifica wikitesto]
  1. (EN)Welcome to the Tcl Developer Xchange!, suTcl Developer Xchange.
  2. (EN)Tcl vs. TCL, suTcler's Wiki.
  3. (EN)Features and Benefits, suTcl Developer Xchange.
  4. (EN)What is Tcl, susito=Tcler's Wiki.

Bibliografia

[modifica |modifica wikitesto]

Voci correlate

[modifica |modifica wikitesto]

Altri progetti

[modifica |modifica wikitesto]

Altri progetti

Collegamenti esterni

[modifica |modifica wikitesto]
V · D · M
Principalilinguaggi di programmazione(tutti)
ABAP ·Ada ·ALGOL ·APL ·Assembly ·Awk ·BASIC ·C ·C++ ·C# ·COBOL ·Delphi ·Eiffel ·Fortran ·F# ·Haskell ·IDL ·Java ·JavaScript ·J# ·Lisp ·LOGO ·Lua ·ML ·Objective-C ·OCaml ·Pascal ·Perl ·PHP ·PL/I ·PLaSM ·Prolog ·Python ·Ruby ·Rust ·SAS ·Scheme ·sh ·Simula ·Smalltalk ·SQL ·Swift ·Visual Basic
V · D · M
Software libero e open source
GeneraleCopyleft ·Eventi ·Software libero ·Definizione ·Gratis versus libre ·Open source
Famiglie di sistemi operativiAros Research Operating System ·BSD ·Darwin ·eCos ·FreeDOS ·GNU ·Haiku ·Inferno ·Linux ·Mach ·MINIX ·OpenSolaris ·Plan 9 ·ReactOS ·Redox ·Symbian OS
Sviluppo software open sourceEclipse ·Free Pascal ·GCC ·Gambas ·Java ·LLVM ·Lua ·NetBeans ·Octave ·Open64 ·Perl ·PHP ·Python ·ROSE ·Ruby ·Tcl
Storia del software liberoGNU ·Haiku ·Linux ·Mozilla (Application Suite ·Firefox ·Thunderbird)
OrganizzazioniApache Software Foundation ·Blender Foundation ·Eclipse Foundation ·freedesktop.org ·Free Software Foundation (Europe ·India ·Latin America) ·FSMI ·GNOME Foundation ·Google Code ·KDE ·Linux Foundation ·Mozilla Foundation ·Open Source Geospatial Foundation ·Open Source Initiative ·Software Freedom Conservancy ·SourceForge ·Symbian Foundation ·The Document Foundation ·Ubuntu Foundation ·Xiph.Org Foundation ·XMPP Standards Foundation ·X.Org Foundation ·Software Freedom Law Center
Licenze libereApache ·Artistic License ·BSD ·GNU GPL ·GNU LGPL ·ISC ·MIT ·MPL ·Ms-PL/RL ·zlib ·Licenze approvate da FSF
Standard di licenzeOpen Source Definition ·The Free Software Definition ·Linee guida Debian per il software libero
SfideBlob binario ·Canonical's contributor agreement ·Gestione dei diritti digitali ·Rebranding dei programmi Mozilla ·Software proprietario ·Causa SCO-IBM ·Restrizioni hardware ·Trusted computing ·Licenza virale ·Guerra dei browser ·Halloween Documents
Altri argomentiTermini alternativi ·Comunità software libero ·Distribuzione Linux ·Forking ·Movimento software libero ·Microsoft Open Specification Promise ·Revolution OS
Controllo di autoritàLCCN(EN) sh94000154 ·GND(DE) 4361529-6 ·J9U(EN, HE) 987007558786705171
 Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica
Estratto da "https://it.wikipedia.org/w/index.php?title=Tcl&oldid=144658429"
Categorie:
Categorie nascoste:

[8]ページ先頭

©2009-2026 Movatter.jp