Timeline
Chat
Prospettiva

Lisp Toolkit

Da Wikipedia, l'enciclopedia libera

Lisp Toolkit
Remove ads

LTK è acronimo di Lisp Toolkit, una libreria per la creazione di interfacce grafiche multipiattaforma scritte in Common LISP.

Thumb
Esempio di interfaccia creata con LTK

Funzionamento

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

Caricamento di LTK

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

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

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))))
Remove ads

Stato di sviluppo

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

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica
Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads