Common Lisp

Common Lisp
ParadigmaMultiparadigma, funcional, Orientação a Objetos
Surgido em1984, 1994 para o ANSI Common Lisp
Criado porComitê ANSI X3J13, presidido por Guy L. Steele Jr.
Estilo de tipagemforte, dinâmica
Principais implementaçõesCLISP, Steel Bank Common Lisp, Embeddable Common Lisp, Armed Bear Common Lisp, Clozure Common Lisp, Allegro Common Lisp, GNU Common Lisp, Corman Common Lisp, LispWorks
Influenciada porLisp, Scheme, Smalltalk
InfluenciouDylan, Clojure, Ruby

Common Lisp é uma implementação específica da linguagem de programação Lisp multi-paradigma que suporta programação funcional e procedural. Sua especificação foi criada por Guy L. Steele nos anos 1980 a partir da linguagem Lisp com o intuito de combinar aspectos de diversos dialetos Lisp anteriores, incluindo Scheme. Foi proposto inicialmente o nome de "Standard Lisp" para a linguagem, mas em virtude de um dialecto Lisp já existir com este nome, se buscou um nome similar, resultando no nome "Common Lisp"[1]. Em 1994 foi publicada no padrão ANSI Information Technology - Programming Language - Common Lisp, registro X3.226-1994 (R1999).[2]. É bem maior e semanticamente mais complexa que Scheme uma vez que foi projetada para ser uma linguagem comercial e ser compatível com os diversos dialectos Lisp dos quais derivou.

Exemplos de código

Olá mundo

(defun olá-mundo ()
  (format t "Olá mundo"))

Entrada e Saída

(defun pergunta (string)
  (format t "~%~%~A" string)
  (read))

(pergunta "Quantos anos voce tem? ")

Loops

(defun quadrados (inicio fim)
  (loop :for i :from inicio :to fim
    :do (format t "~A ~A~%" i (* i i))))

Bibliografia

  • SEIBEL, PETER.(2005); Practical Common Lisp. Apress, 2005.
  • GRAHAM, Paul (1996). Ansi Common Lisp. Nova Jérsia: Prentice Hall. ISBN 0-13-370875-6 
  • GRAHAM, PAUL.(1993); On Lisp. Prentice Hall, 1993. (Descreve técnicas avançadas para uso de macros)
  • STEELE, Guy L. (1990). Common Lisp - The Language. Lexington: Digital Press. ISBN 1-55558-041-6 
  • TOURETZKY, DAVID S.(1990); Common Lisp - A Gentle Introduction to Symbolic Computation. Benjamin Cummings, Redwood City, 1990. ISBN 0-8053-0492-4

Ver também

Referências

  1. BERGIN, Thomas J.; GIBSON, Richard G. (1996). History of Programming Languages II. New York: ACM Press, Addison-Wesley. 864 páginas. ISBN 0-201-89502-1 
  2. Página do Documento Arquivado em 1 de janeiro de 2014, no Wayback Machine. no sítio da ANSI

Ligações externas