Un IDE per TclTk:
TclTk
è un magnifico toolkit per sviluppare applicazioni con o senza GUI (Graphical
User Interface) in un baleno, multipiattaforma (Windows, Linux,
Solaris, MacIntosh). Si tratta di uno "scripting language"
(una cosa che è sempre mancata in Windows), quindi di un linguaggio
testuale interpretato. Va benissimo per l'interattività, ma
ovviamente non potete pensare di fare del "Number Crunching"
usandolo così com'è. Dato che però è facilmente estensibile, i
calcoli pesanti possono essere sviluppati in C, e potete costruirvi un
Package che incapsula in modo efficiente le vostre routine di calcolo
complesso. E' dotato di un numero impressionante di librerie e package
prefabbricati, che stano sotto le vostre dita, e che vi permettono di
costruire applicazione anche molto complesse scrivendo solo poche
righe di codice. Date, per esempio, un'occhiata a Snack, un package
per il signal processing del suono e della voce sviluppato al KTH di
Stoccolma.
Navigando
nel sito TclTk potete trovare i manuali originali di John
Ousterhout (l'inventore di TclTk), tutorial, documentazione,
applicazioni, ecc. ecc. Vale la pena di perdere diverse ore del
proprio tempo, per risparmiarne molte molte di più in futuro.
Come tutte le cose fatte dagli uomini per gli uomini
(non, cioè, da cretini per altri cretini) richiede un certo
addestramento, un po' di studio e di concentrazione, per capire com'è
fatto. Ma permette un approccio "morbido", all'inizio
elementare poi via via più sofisticato, come potrete verificare. Se
siete però una persona di media intelligenza, scoprirete che una
volta imparato, anche se non lo usate tutti i giorni, TclTK è come la
bicicletta: non si scorda mai. Lo stesso non può dirsi dei MS Visual
C, C#, .NET, tutte cose che se non le usate per almeno un paio di ore
al giorno, tutti i giorni ad ore fisse come l'antibiotico, o come un
violino, ogni volta che la riprendete in mano riuscite a cavarne,
nelle prime ore, solo miagolii. Date un'occhiata alle demo dei
BWidget e degli Iwidget. Guardate nel source delle demo per
rendervi conto di quanto si possa fare con un paio di righe di codice,
e fate il confronto con Visual C, C# e .NET.
Ecco i miei consigli (che corrispondono anche alle mie
usanze). Purtroppo tutto questo si applica senza adattamenti solo a
sistemi Windows.
-
Scaricate TclTk. Ad esempio, la versione corrente
precompilata (free) di Activestate.
Installatela sul vostro sistema. Se siete utenti esperti, potete
ricompilarla dai source, o compilare la versione con i Thread.
Activestate è una azienda che fa il suo lucro su TclTk, che è
Open Source, ma è corretta. Vende solo i suoi Tool, e le
informazioni di registrazioni per scaricare le versioni free sono
solo opzionali. Tra i suoi Tools, un IDE (Komodo) che però trovo
personalmente troppo pesante, e una suite di utility, tra
le quali un "compilatore" (attualmente TclTk
Developer Kit) invece molto ben fatta. Potete trovare anche un
"wrapper" (in grado di costruire dei file
eseguibili autonomi), TclPro, un po' datato ma ottimamente
funzionante, del tutto gratuito.
-
Scaricate quello che impropriamente è chiamato un
"editor": ConTEXT
(in realtà, un ottimo IDE configurabile), di Eden Kirin,
di Zagabria, Croazia. Se potete, mandategli un po' di soldi, se li
merita. Vedremo anche altri usi di ConTEXT.
E' un prodotto magnifico, sfortunatamente, solo per Windows.
Installatelo.
-
ConTEXT ha diversi "higlighters",
colorizzatori e sottolineatori di testi di vari linguaggi secondo
le loro rispettive sintassi, tra i quali anche TclTk. Aiuta molto.
Di più, permette di configurare tasti funzione, creare progetti multifile
e di definire, tra questi, un "makefile", file
principale da dare in pasto al compilatore (o a make, se
del caso).
Andate nel Menu "Options"-> Environment Options ->
Execute Keys. Qui è possibile definire una serie di comportamenti
in funzione del suffisso del file aperto o scelto come "makefile"
del progetto.
Premete "Add" per aggiungere un suffisso. Digitate
"tcl" (suffisso tipico dei file sorgente TclTck) e
premete OK.
Nella finestrella a sinistra comparirà un alberino intestato
sotto "tcl", con un ramo per ogni tasto funzione F9,
F10, F11, F12.
Click su F9.
In "Execute:" digitate "C:\Tcl\bin\tkcon.tcl"
(a meno che non abbiate indicato per instajllare il TclTk una
diversa cartella, in tal caso andatevela a cercare e individuate
il file tkcon.tcl.
Nella casella "Start in" digitate "%p" (per
cartella corrente).
Nella casella "Hint" digitate "Start tkcon" o
la cosa che più vi piace per indicare questa operazione.
Nella casella "Save " scegliete "All files before
execution". Premete OK.
Adesso fate la stessa operazione scegliendo però il tasto
F10.
In Execute digitate "C:\Tcl\bin\wish.exe" (con la solita
riserva di cercare dove avete installato TclTk se avete usato
un'altra locazione).
In "Start in"digitate "%p".
In "Parameters" digitate "C:\Tcl\bin\tkcon.tcl %f".
In "Hint" digitate "Run in TkCon" o qualche
cosa di simile.
In "Save" scegliete "All files before execution".
Premete ora su OK.
-
Sempre in "Options->Environment Options"
fate click sulla orecchia "Miscellaneous".
Nell'elenco fate click sulla riga "TclTk", premete
"Edit" e andatevi a cercare il file "chm" di
help di TclTk. Generalmente "C:\Tcl\doc\ActiveTclHelpXX.chm".
Premete OK, ed è tutto fatto.
Ora, se create un progetto che comprende diversi file
tcl, chiamati da un main file che fa il sourcing
di altri file, è tutto sotto le dita.:
-
Battezzate come "makefile" il file
principale (da View->File Panel->Project, scegliete il file
in questione e poi click sugli ingranaggi "Set make file
...").
-
Ogni volta che premerete F9 partirà la console
tkcon sulla cartella del progetto, e quindi potrete facilmente
fare "source ..." digitando il solo nome del file, o
facendo "dir" e poi copia-incolla..
-
Ogni volta che premerete F10, partirà la vostra
applicazione tcl entro la console tkcon, e quindi con tutte le facilities
di debugging.
-
Ogni volta che premerete F1 avendo aperto un file
Tcl, salirà l'help di TclTk.
Qui
trovate qualche esempio di applets TclTk, anche in associazione
con lo Scilab. Sono state tutte sviluppate così.
|
|