17
LISP LISP Linguagem de Programação Funcional Linguagem de Programação Funcional Alunos: Alunos: BRUNO FÉLIX DE MENDONÇA BRUNO FÉLIX DE MENDONÇA JOÃO VICTOR CUNHA OLIVEIRA GOMES JOÃO VICTOR CUNHA OLIVEIRA GOMES LUCAS UMBELINO SANTANA LUCAS UMBELINO SANTANA

Apresentação lisp

Embed Size (px)

DESCRIPTION

Apresentação do trabalho da Disciplina de Paradigmas de Linguagens de Programação do ILES/ULBRA - 3º Período - 2011/1 - Grupo: Bruno, João Lucas e Lucas. Tema: Linguagem LISP.

Citation preview

Page 1: Apresentação lisp

LISPLISP

Linguagem de Programação FuncionalLinguagem de Programação Funcional

Alunos:Alunos:

BRUNO FÉLIX DE MENDONÇABRUNO FÉLIX DE MENDONÇA

JOÃO VICTOR CUNHA OLIVEIRA GOMESJOÃO VICTOR CUNHA OLIVEIRA GOMES

LUCAS UMBELINO SANTANALUCAS UMBELINO SANTANA

Page 2: Apresentação lisp

A HistóriaA História

- Primeira Linguagem de programação Primeira Linguagem de programação funcional;funcional;

- Foi criada por John McCarthy em 1958;Foi criada por John McCarthy em 1958;

- O seu nome vem de O seu nome vem de LISt ProcessingLISt Processing;;

Page 3: Apresentação lisp

Características do LISPCaracterísticas do LISP

- O LISP possui uma sintaxe simples;O LISP possui uma sintaxe simples;

- Trabalha de forma fácil com problemas Trabalha de forma fácil com problemas recursivos;recursivos;

Page 4: Apresentação lisp

Características do LISPCaracterísticas do LISP

- Basicamente, no LISP há 2 estruturas de Basicamente, no LISP há 2 estruturas de dados: o átomo e a lista;dados: o átomo e a lista;

(a b c d) = uma lista (conjunto de átomos);(a b c d) = uma lista (conjunto de átomos);

(a (b c) d (e (f g) ) ) = associação de listas;(a (b c) d (e (f g) ) ) = associação de listas;

-- Portanto, a estrutura básica do LISP é Portanto, a estrutura básica do LISP é formada por listas e parênteses;formada por listas e parênteses;

Page 5: Apresentação lisp

Características do LISPCaracterísticas do LISP

- No LISP, não precisa armazenar as No LISP, não precisa armazenar as variáveis;variáveis;

- Possui vários tipos de dados: numbers, Possui vários tipos de dados: numbers, strings, lists, characters, symbols, entre strings, lists, characters, symbols, entre outros;outros;

Page 6: Apresentação lisp

Características do LISPCaracterísticas do LISP

- O LISP possui vários dialetos, tais como: O LISP possui vários dialetos, tais como: Common LISP, Scheme, Emacs LISP, Common LISP, Scheme, Emacs LISP, Interlisp, MacLisp, entre outros.Interlisp, MacLisp, entre outros.

- Os mais utilizados são: Common LISP e Os mais utilizados são: Common LISP e Scheme;Scheme;

Page 7: Apresentação lisp

Características do LISPCaracterísticas do LISP

- O LISP é implementado por um - O LISP é implementado por um interpretador;interpretador;

Page 8: Apresentação lisp

Características do LISPCaracterísticas do LISP

- No LISP, os símbolos - No LISP, os símbolos nil nil e e t t são a forma são a forma de representar uma expressão Booleana;de representar uma expressão Booleana;

Page 9: Apresentação lisp

Características do LISPCaracterísticas do LISP

- O LISP não é case sensitive;O LISP não é case sensitive;

Page 10: Apresentação lisp

Função em LISPFunção em LISP

- O primeiro elemento de uma lista - O primeiro elemento de uma lista pode ser o nome de uma função;pode ser o nome de uma função;

Page 11: Apresentação lisp

Examinando listas no LISPExaminando listas no LISP

- Cons – é um registro que retorna uma - Cons – é um registro que retorna uma cópia da lista com o elemento inserido cópia da lista com o elemento inserido como seu primeiro valor na lista;como seu primeiro valor na lista;

Page 12: Apresentação lisp

Examinando listas no LISPExaminando listas no LISP

- Dentro de cons(registros), existem duas Dentro de cons(registros), existem duas funções(seletores) diferentes: funções(seletores) diferentes:

CAR(Contents of Address Register);CAR(Contents of Address Register);

CDR(Contents of Decrement Register);CDR(Contents of Decrement Register);

Page 13: Apresentação lisp

Utilização do LISPUtilização do LISP

- O LISP é bastante utilizado em Inteligência - O LISP é bastante utilizado em Inteligência Artificial, sendo pioneiro em aplicações Artificial, sendo pioneiro em aplicações como administração automática de como administração automática de armazenamento;armazenamento;

Page 14: Apresentação lisp

Fibonacci em LISPFibonacci em LISP

Page 15: Apresentação lisp

Fibonacci em CFibonacci em C

Page 16: Apresentação lisp

Fatorial em LISPFatorial em LISP

Page 17: Apresentação lisp

Execução de códigos no LISPExecução de códigos no LISP