Lisp Toolkit

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
Esempio di interfaccia creata con LTK

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]

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica