{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

Funcional - Universidade Federal de So Carlos Departamento...

Info iconThis preview shows pages 1–10. Sign up to view the full content.

View Full Document Right Arrow Icon
Universidade Federal de São Carlos Departamento de Computação Linguagem de  Programa çã o Prof. Dr. Antonio Francisco do Prado e-mail: [email protected]
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Linguagem LISP Funções Primitivas LISP Predicados Estruturas de Controle e Procedimentos Recursividade Abstração de dados e Mapeamento Imprimindo e Lendo Lista de Propriedades Array Variáveis Especiais e Chamada de Função
Background image of page 2
Linguagem LISP Histórico Foi desenvolvido em 1959 pelo Grupo de Inteligência Artificial do M.I.T., sob a direção do Prof. John McCarthy. Facilitar experimentos no sistema proposto chamado Advice Taker. Foi desenvolvido para IBM 704. Hoje existem várias versões do LISP. Objeto de Dados Os dados na linguagem Lisp são chamados S-expressions ou expressões simbólicas. A mais simples das expressões simbólicas é o símbolo atômico ou átomo.
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Definição Sintática do Átomo <átomo> = <átomo list> | <átomo num> <átomo list> = <letra> | <letra><partícula> <partícula> = <vazio> | <letra><partícula> | <dígito><partícula> <átomo num> = <vazio> | <dígito><átomo num> <letra> = A | B | C | D | ... | Z <dígito> = 0 | 1 | 2 | ... | 9 Definição de uma S-expression <S-expression> = <átomo> | (<S-expression>. <S-expression>) Exemplos de expressões simbólicas: (A.B) (A.(X.(R.(S.H)))) ((A.B).C) ((((K.L).C).W).V) (A.(B.C)) (UM.(DOIS.TRES)) ((A.B).(B.C)) (TOC.TOC)
Background image of page 4
Definição de uma Lista Uma S-expression para uma lista de um elemento é o elemento pontuado com nil. Exemplo : (A) => ( A . nil ) Uma S-expression para uma lista com dois elementos, é o primeiro elemento pontuado com a lista do segundo elemento. Exemplo : ( A B ) => ( A . ( B . nil ) ) Uma S-expression corresponde a uma lista, se e somente se, a árvore binária para a S-expression tiver um NIL para cada terminal direito da sub-árvore. Exemplo : ( A B ) ou ( A . ( B . nil ) ) A B nil
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Listas Um arranjo conveniente de dados em muitas aplicações podem ser representadas por listas ordenadas. Simples expressões algébricas podem ser representadas por listas de átomos: (SOMA X Y) ou (VEZES I J) Um elemento de uma lista pode ser uma lista. Exemplo : ( ( A ) ( B C ) ) => ( ( A . nil ) . ( ( B . ( C . nil ) ) . nil ) ) NIL corresponde a lista vazia. Toda lista é um S-expression, mas nem toda S-expression é uma lista.
Background image of page 6
Em se tratando de sintaxe, qualquer coisa envolta por parênteses é uma lista. 1. E se colocarmos parênteses ao redor de nada ? 2. E se colocarmos parênteses ao redor de outra lista ? Em ambos os casos, a resposta é a mesma: Você ainda terá uma lista. Portanto, a expressões seguintes são listas: ( ) ( ( ) ) ( ( ( ) ) ) ( ( a b c ) ) ( ( 1 2 ) 3 4 ) ( mouse ( monitor 512 342 ) ( teclado BR ) ) O único caso onde você não têm uma lista é quando você têm um abre-parênteses sem seu correspondente fecha- parênteses. Ex: ( a b c ( ( ( 25 g ) 34 ( ( ( ) ) ( ( ) ) )
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Árvore Binária A representação de uma árvore binária em S-expression é muito simples. ( A . B ) A B S-expression Lista Átomo Números Símbolos(cadeia de caracteres e caracteres especiais) Resumo
Background image of page 8
Ciclo do Interpretador LISP e Avaliação O Interpretador LISP opera normalmente num ciclo de leitura-avaliação-impressão . Isto é, ele o que você digita, avalia , e Imprime o resultado.
Background image of page 9

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 10
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}