Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Lisp - Teknopedia
Lisp - Teknopedia
Lisp
linguaggio di programmazione
AutoreJohn McCarthy
Data di origine1958
Utilizzointelligenza artificiale
Paradigmiimperativo e funzionale
Tipizzazionedinamica, forte
Estensioni comuni.lisp
Influenzato daIPL
Ha influenzatoCLIPS, CLU, COWSEL, Dylan, Falcon, Forth, Haskell, Io, Ioke, JavaScript, Julia, Logo, Lua, Mathematica, ML, Nu, OPS5, Perl, POP-2/11, Python, Qi, R, Shen, Rebol, Ruby, Smalltalk, Tcl
Implementazione di riferimento
Sistema operativoLinux, macOS e Windows
Modifica dati su Wikidata · Manuale

Lisp (List Processor) è una famiglia di linguaggi di programmazione con implementazioni sia compilate sia interpretate, associata nel passato ai progetti di intelligenza artificiale. È stato ideato nel 1958 da John McCarthy[1] come linguaggio formale per studiare la computabilità di funzioni ricorsive (nel senso di Skolem) su espressioni simboliche. È stato anche il primo linguaggio a facilitare uno stile di programmazione funzionale.

Descrizione

[modifica | modifica wikitesto]

Il primo software libero con un nucleo LISP è stato emacs, diffuso editor di testo per terminale progettato negli anni ottanta da Richard Stallman sulle LISP machine dell'epoca e portato successivamente su tutti i sistemi operativi. Commercialmente, la diffusione più rilevante del linguaggio è avvenuta con la sua integrazione in programmi di uso comune, come nel CAD AutoCAD (Autodesk) o come nell'azienda editrice Interleaf, che utilizza una versione personalizzata di Lisp e strettamente integrata con le funzioni di programmazione dell'ambiente grafico.

La Symbolics Technology Inc. ha realizzato negli anni ottanta delle workstation e server con sistema operativo multitasking e orientato agli oggetti con una potentissima interfaccia grafica di programmazione simbolica, interamente programmato in LISP, compreso il microcodice del processore LISP.

Le prime LISPM (LISP Machine) erano state implementate al MIT. Anche la Xerox produsse delle macchine LISPM (Dandylion, Dandytiger) come pure la Texas Instrument (TI Explorer).

Complessi software LISP restano ancora in servizio presso enti governativi, militari, aerospaziali, compagnie aeree, compagnie petrolifere, ecc.[senza fonte] per complessi giochi di simulazione e valutazione di strategie operative.

Data la grande versatilità del linguaggio e quindi la facilità di estensione e personalizzazione da parte del programmatore[senza fonte], sono fioriti molti dialetti di LISP, tra cui, il più diffuso, e quello a cui solitamente ci si riferisce parlando di LISP, è Common LISP. Altri sono Scheme e Arc.

Programma di esempio

[modifica | modifica wikitesto]

Gli esempi qui riportati sono scritti in Common LISP

(format t "Hello, World!")
(princ "Hello, World!")
(print "Hello, World!")
(write "Hello, World!")

Es: con Cmucl lisp GPL interprete e compilatore di codice macchina e/o bytecode provate a digitare:

     * (format t "~&Hello, world!~%")
     Hello, world!
     NIL
     *

Per compilare quanto sopra scrivere in un file di testo dal nome "test.lisp" quanto segue:

(defun miotest ()
  (format t "~&Hello, world!~%"))

Lanciate Cmucl e da linea comandi del lisp interprete digitare:

  # lisp
  ....
  * (compile-file "..../test.lisp")

Il comando trasforma e compila il file in test.x86 (codice macchina X86), quindi basta digitare:

     * (require:test)
     * (miotest)
     Hello, world!
     NIL
     *

...

Dialetti del LISP

[modifica | modifica wikitesto]
  • Arc
  • AutoLISP
  • Clojure
  • Common LISP
  • Scheme
  • Nyquist

Note

[modifica | modifica wikitesto]
  1. ↑ John McCarthy, Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I, su www-formal.stanford.edu. URL consultato il 13 ottobre 2006 (archiviato dall'url originale il 4 ottobre 2013).

Bibliografia

[modifica | modifica wikitesto]
  • D. Touretzky, Common Lisp - Un'introduzione graduale all'elaborazione simbolica, Zanichelli, ISBN 88-08-12248-4
  • LISP: l'intelligenza artificiale, in Micro & Personal Computer, n. 4, Roma, Gruppo Editoriale Suono, aprile 1980, pp. 72-77, OCLC 859585120.
  • LISP: l'intelligenza artificiale - Seconda parte: le applicazioni, in Micro & Personal Computer, n. 5, Roma, Gruppo Editoriale Suono, maggio/giugno 1980, pp. 58-62, OCLC 859585120.
  • Ken Tractor, Introduzione al LISP - Elementi fondamentali di programmazione, Franco Muzzio & c., 1984, ISBN 88-7021-256-4.

Voci correlate

[modifica | modifica wikitesto]
  • Car e cdr
  • Cons
  • Common LISP
  • Steel Bank Common Lisp
  • Lisp Toolkit
  • Categoria:Software in Lisp

Altri progetti

[modifica | modifica wikitesto]

Altri progetti

  • Wikibooks
  • Wikimedia Commons
  • Collabora a Wikibooks Wikibooks contiene testi o manuali su Lisp
  • Collabora a Wikimedia Commons Wikimedia Commons contiene immagini o altri file su Lisp

Collegamenti esterni

[modifica | modifica wikitesto]
  • LISP, su Treccani.it – Enciclopedie on line, Istituto dell'Enciclopedia Italiana. Modifica su Wikidata
  • LISP, in Dizionario delle scienze fisiche, Istituto dell'Enciclopedia Italiana, 1996. Modifica su Wikidata
  • LISP, su sapere.it, De Agostini. Modifica su Wikidata
  • LISP, in Enciclopedia della Matematica, Istituto dell'Enciclopedia Italiana, 2013. Modifica su Wikidata
  • (EN) David Hemmendinger, LISP, su Enciclopedia Britannica, Encyclopædia Britannica, Inc. Modifica su Wikidata
  • (EN) Opere riguardanti Lisp, su Open Library, Internet Archive. Modifica su Wikidata
  • (EN) Lisp, su Encyclopaedia of Mathematics, Springer e European Mathematical Society. Modifica su Wikidata
  • (EN) Denis Howe, Lisp, in Free On-line Dictionary of Computing. Disponibile con licenza GFDL
  • Italian Lisp User Group, su lisp.it.
  • "Il Mio Lisp", libro italiano sul linguaggio Lisp utilizzato nei software CAD, su redchar.net.
  • "Common Lisp e Tools + manuali con distribuzione Knoppix pronta per l'uso" (ISO), su lispnyc.org.
V · D · M
Principali linguaggi di programmazione (tutti)
ABAP · Ada · ALGOL · APL · Assembly · Awk · BASIC · C · C++ · C# · COBOL · Delphi · Eiffel · Fortran · F# · Haskell · IDL · Java · JavaScript · J# · Lisp · LOGO · Lua · ML · Objective-C · OCaml · Pascal · Perl · PHP · PL/I · PLaSM · Prolog · Python · Ruby · Rust · SAS · Scheme · sh · Simula · Smalltalk · SQL · Swift · Visual Basic
Controllo di autoritàLCCN (EN) sh85077449 · GND (DE) 4035918-9 · BNE (ES) XX535292 (data) · BNF (FR) cb11934831x (data) · J9U (EN, HE) 987007531493805171
  Portale Informatica: accedi alle voci di Teknopedia che trattano di informatica
Estratto da "https://it.wikipedia.org/w/index.php?title=Lisp&oldid=148321585"

  • Indonesia
  • English
  • Français
  • 日本語
  • Deutsch
  • Italiano
  • Español
  • Русский
  • فارسی
  • Polski
  • 中文
  • Nederlands
  • Português
  • العربية
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022