Continuaremos a usar nossa apostila (Ap.).Um programa em Lisp consiste na definicao de novas funcoes, para que possam ser usadas no contexto desejado.Veremos nesta aula a estrutura basica de um programa em Lisp, incluindo a definicao de funcoes (Ap. 3.1), o uso de condicionais (Ap. 3.2) e o uso de variaveis locais (Ap. 3.3). Usaremos nossa apostila (Ap.).Arrays sao criadas em Lisp pela funcao make-array (Ap. 12.1.1) e acessadas pela funcao aref (Ap. 12.1.2).Ha varias formas de loops em Lisp. Nesta aula, focaremos apenas em duas delas: dolist e dotimes (Ap. 12.2). Acompanhe pela apostila (Ap.). Nesta aula veremos:Tipos existentes em Lisp (Ap. 2.1).Tipos atomicos: numeros (Ap. 2.2), simbolos (Ap. 2.3) e strings.Tipos nao atomicos: pares-com-ponto, (Ap. 2.4), entre os quais estao as listas, e sua representacao grafica (Ap. 2.5).Primeiras funcoes LISP: car, cdr, e cons (Ap. 2.6).Coleta de lixo (Ap. 2.7). Seguimos com a apostila (Ap.).Nesta aula veremos algumas funcoes aritmeticas (Ap. cap. 6).A seguir, veremos a forma geral de definir funcoes e macros (Ap. cap. 7).Para terminar, veremos em mais detalhe condicionais (Ap. 8.1 e 8.2) e predicados (Ap. 8.3). Seguimos com nossa apostila (Ap.).Veremos incialmente como escrever funcoes recursivas, com a ajuda do metodo do quadradao (Ap. 5.1).A seguir, veremos como recursao pode substituir loops (Ap. 5.2), algo que fazemos tambem em Prolog. Temos uma apostila (Ap.) para acompanhar as aulas da Lisp. Nesta aula teremos:Breve historia de Lisp (Ap. cap. 1).Alguns programas famosos: derivada simbolica (Ap. 1.1), psiquiatra (Ap. 1.2), medico (Ap. 1.3).Por fim, algumas dicas sobre como usar um interpretador Lisp. Usaremos nossa apostila (Ap.).Nesta aula, veremos algumas das principais funcoes pre-definidas (Ap. cap. 9). A maioria delas se aplica a listas.Assim, temos funcoes para ver se um elemento esta numa lista, extrair elementos de listas (dado seu indice), retornar pedacos de listas, saber seu comprimento, reverte-las, construir listas, concatena-las, substituir elementos por outros em toda a estrutura, e ate aplicar uma funcao a cada elemento da lista (retornando uma lista com os resultados). Continuaremos a usar nossa apostila (Ap.).De forma simplificadora, podemos dizer que os simbolos em Lisp sao as variaveis.Um simbolo pode ter um valor como dado e, independentemente, um valor como funcao (Ap. 4.1). Veremos nesta aula como alterar estes valores (Ap. 4.2), e, no processo, falaremos sobre a avaliacao de expressoes em Lisp.Por fim, veremos maneiras de inibir a avaliacao, total ou percialmente (Ap. 4.3). Usaremos nossa apostila (Ap.).Lisp oferece funcoes para tratar listas como se fossem conjuntos. Pode-se fazer uniao, intersecao e varias outras operacoes de conjuntos.Em relacao a elementos repetidos, estas operacoes sempore retornam listas sem repeticoes quando recebem argumentos sem repeticoes. Continuamos usando a apostila (Ap.).Prolog e muito usada em processamento de linguagens naturais, onde aparece o problema da analise lexica de frases (Ap. 9.1).E bastante simples codificar gramaticas livres de contexto em Prolog (Ap. 9.2), que conta com uma notacao especial para este fim (Ap. 9.3).Argumentos adicionais podem ser usados para resolver a questao dos plurais (Ap. 9.4), entre outras aplicacoes. Li este relato no site da Comrades e o coloquei aqui, estamos acostumados a ler relatos de pessoas