Lisp Toolkit
![](http://upload.wikimedia.org/wikipedia/commons/thumb/c/c0/LTK_example.png/350px-LTK_example.png)
LTK è acronimo di Lisp Toolkit, una libreria per la creazione di interfacce grafiche multipiattaforma scritte in Common LISP.
Funzionamento
[modifica | modifica wikitesto]LTK contiene una serie di funzioni e di classi che convertono i comandi impartiti in Lisp in stringhe nel linguaggio di programmazione Tcl/Tk. Queste stringhe vengono inviate tramite uno stream bidirezionale all'apposito interprete wish (che deve essere installato sulla macchina), che elabora i comandi presenti nelle stringhe e si occupa della creazione delle finestre e dei widget.
Programmi di esempio
[modifica | modifica wikitesto]Caricamento di LTK
[modifica | modifica wikitesto]Prima di poter essere utilizzata, la libreria deve essere caricata dell'implementazione Common Lisp presente nel sistema. Per fare ciò conviene prima compilarla
(compile-file "ltk") ;; Compila la libreria
in modo che sia più rapidamente caricabile e utilizzabile in futuro tramite i comandi
(load "ltk") ;; Carica (in-package :ltk) ;; Entra nel package di LTK
Esempi contenuti in LTK
[modifica | modifica wikitesto]La libreria contiene già due esempi
(ltktest) ;; Esempio di finestra con vari pulsanti, menu, popup, ecc. (ltk-eyes) ;; Occhi che seguono il puntatore del mouse.
Creazione dell'interfaccia
[modifica | modifica wikitesto]Questa funzione crea una finestra e al suo interno un pulsante (b, istanza della classe button) con la scritta "Premi qui", che stampa in output la scritta "Hello world!".
(defun hello() (with-ltk () (let ((b (make-instance 'button :master nil :text "Premi qui" :command (lambda () (format t "Hello World!~&"))))) (pack b))))
Stato di sviluppo
[modifica | modifica wikitesto]LTK è in fase di sviluppo e non tutti i widget forniti da Tcl/Tk sono supportati. Ci sono anche alcuni problemi nella comunicazione con l'interprete wish in Microsoft Windows.
Collegamenti esterni
[modifica | modifica wikitesto]- (EN) Homepage del progetto, su peter-herth.de.
- Screenshots, su peter-herth.de.