Common Lisp
Common Lisp | |
---|---|
Paradigma | Multiparadigma, funcional, Orientação a Objetos |
Surgido em | 1984, 1994 para o ANSI Common Lisp |
Criado por | Comitê ANSI X3J13, presidido por Guy L. Steele Jr. |
Estilo de tipagem | forte, dinâmica |
Principais implementações | CLISP, 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 por | Lisp, Scheme, Smalltalk |
Influenciou | Dylan, 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
[editar | editar código-fonte]Olá mundo
[editar | editar código-fonte](defun olá-mundo
(format t "Olá mundo"))
Entrada e Saída
[editar | editar código-fonte](defun pergunta (string)
(format t "~%~%~A" string)
(read))
(pergunta "Quantos anos voce tem? ")
Loops
[editar | editar código-fonte](defun quadrados (inicio fim)
(do ((i inicio (+ i 1)))
((> i fim) 'fim)
(format t "~A ~A~%" i (* i i))))
Bibliografia
[editar | editar código-fonte]- 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
[editar | editar código-fonte]Referências
- ↑ 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
- ↑ Página do Documento Arquivado em 1 de janeiro de 2014, no Wayback Machine. no sítio da ANSI
Ligações externas
[editar | editar código-fonte]- common-lisp.net
- lisp-lang.org
- Common Lisp Cookbook
- Awesome-cl
- Site do autor David S. Touretzky
- Livro em pdf "Common Lisp: A Gentle Introduction to Symbolic Computation de David S. Touretzky"
- Livro "Common Lisp - The Language" disponível em formato HTML
- Livro "Common Lisp The Language" pela Google books
- Implementações de Common Lisp
- Livro do Paul Graham em pdf "On Lisp"