Tcl
Da Wikipedia, l'enciclopedia libera.
Tcl (acronimo di Tool Command Language), è un linguaggio scripting creato da John Ousterhout generalmente considerato di facile apprendimento ma allo stesso tempo potente. Viene comunemente usato per prototipizzare rapidamente e testare applicazioni interpretate, anche dotate di GUI. La pronuncia suggerita per l' acronimo Tcl è "tickle".
Indice |
[modifica] Caratteristiche
Le caratteristiche del linguaggio Tcl comprendono:
- Qualsiasi cosa è un comando, comprese le strutture del linguaggio. Queste ultime utilizzano la Notazione polacca inversa.
- 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 event-driven per i sockets and i files.
- Facilmente estendibile tramite una API che permette di collegare all' interprete oggetti scritti in linguaggio C, C++ REXX e Java.
- Completo supporto per l' Unicode già dal 1999.
- Indipendente dalla piattaforma. L' interprete è già stato portato su: Win32, UNIX, Mac, etc.
- Buona integrazione con il sistema a finestre grazie all' estensione Tk.
[modifica] Esempi
Per un Hello World il codice è
puts "Hello World!"
Semplicissimo esempio di codice:
puts "dammi un numero" gets stdin numero puts "Il quadrato è [expr {$numero * $numero}]"
Un altro esempio in stile funzionale:
proc filter {list script} { set res {} foreach e $list { if {[uplevel 1 $script $e]} { lappend res $e } } set res }
L'elemento e è incluso nella lista list? (ritorna 0 od 1).
proc in {list e} { expr {[lsearch -exact $list $e] >= 0} }
Elementi comuni di due liste ovvero insieme (intersezione):
% filter {a b c} {in {b c d}} b c
[modifica] Tk
![]() |
Per approfondire, vedi la voce Tk (informatica). |
L'estensione Tk è un insieme di strumenti per scrivere GUI (un toolkit di widget) implementato dallo stesso autore di Tcl. Può essere usato anche in combinazione ad altri linguaggi come Perl, Python, Ruby, Lisp ed altri, ed è stato portato su varie piattaforme quali GNU/Linux, Apple Macintosh, Unix e Windows.
Esempio Tk, un orologio numerico in tre righe:
proc every {ms body} {eval $body; after $ms [info level 0]} pack [label .clock -textvar time] every 1000 {set ::time [clock format [clock sec] -format %H:%M:%S]}
[modifica] Voci correlate
- Lisp Toolkit
- Tk
- Expect
- Itcl
- Tcllib
- Eggdrop
- C++/Tcl
- Tcl/Java
- Itk
- XOTcl
- Snit
- TclX
- Tkinter
[modifica] Collegamenti esterni
Principali linguaggi di programmazione (tutti) |
Ada | ALGOL | APL | Awk | BASIC | C | C++ | C# | COBOL | Delphi | Eiffel | Fortran | Haskell | IDL | Java | JavaScript | J# | Lisp | LOGO | ML | Objective C | O'Caml | Pascal | Perl | PHP | PL/I | PLaSM | Prolog | Python | Ruby | SAS | Scheme | sh | Simula | Smalltalk | SQL | Transact-SQL | Visual Basic |
Portale Informatica: accedi alle voci di Wikipedia che parlano di informatica