Usaremos nossa apostila (Ap.).
Arrays são criadas em Lisp pela função make-array (Ap. 12.1.1) e acessadas pela função aref (Ap. 12.1.2).
Há várias formas de loops em Lisp. Nesta aula, focaremos apenas em duas delas: dolist e dotimes (Ap. 12.2).
Paradigmas de Programação
sábado, 19 de novembro de 2011
Lisp - Funções para conjuntos
Usaremos nossa apostila (Ap.).
Lisp oferece funções para tratar listas como se fossem conjuntos. Pode-se fazer união, interseção e várias outras operações de conjuntos.
Em relação a elementos repetidos, estas operações sempore retornam listas sem repetições quando recebem argumentos sem repetições.
Lisp oferece funções para tratar listas como se fossem conjuntos. Pode-se fazer união, interseção e várias outras operações de conjuntos.
Em relação a elementos repetidos, estas operações sempore retornam listas sem repetições quando recebem argumentos sem repetições.
sábado, 12 de novembro de 2011
Lisp - Algumas funções pré-definidas
Usaremos nossa apostila (Ap.).
Nesta aula, veremos algumas das principais funções pré-definidas (Ap. cap. 9). A maioria delas se aplica a listas.
Assim, temos funções para ver se um elemento está numa lista, extrair elementos de listas (dado seu índice), retornar pedaços de listas, saber seu comprimento, revertê-las, construir listas, concatená-las, substituir elementos por outros em toda a estrutura, e até aplicar uma função a cada elemento da lista (retornando uma lista com os resultados).
Nesta aula, veremos algumas das principais funções pré-definidas (Ap. cap. 9). A maioria delas se aplica a listas.
Assim, temos funções para ver se um elemento está numa lista, extrair elementos de listas (dado seu índice), retornar pedaços de listas, saber seu comprimento, revertê-las, construir listas, concatená-las, substituir elementos por outros em toda a estrutura, e até aplicar uma função a cada elemento da lista (retornando uma lista com os resultados).
segunda-feira, 7 de novembro de 2011
Lisp - Funções, macros, condicionais, predicados
Seguimos com a apostila (Ap.).
Nesta aula veremos algumas funções aritméticas (Ap. cap. 6).
A seguir, veremos a forma geral de definir funções e macros (Ap. cap. 7).
Para terminar, veremos em mais detalhe condicionais (Ap. 8.1 e 8.2) e predicados (Ap. 8.3).
Nesta aula veremos algumas funções aritméticas (Ap. cap. 6).
A seguir, veremos a forma geral de definir funções e macros (Ap. cap. 7).
Para terminar, veremos em mais detalhe condicionais (Ap. 8.1 e 8.2) e predicados (Ap. 8.3).
Lisp - Recursão
Seguimos com nossa apostila (Ap.).
Veremos incialmente como escrever funções recursivas, com a ajuda do método do quadradão (Ap. 5.1).
A seguir, veremos como recursão pode substituir loops (Ap. 5.2), algo que fazemos também em Prolog.
Veremos incialmente como escrever funções recursivas, com a ajuda do método do quadradão (Ap. 5.1).
A seguir, veremos como recursão pode substituir loops (Ap. 5.2), algo que fazemos também em Prolog.
quinta-feira, 3 de novembro de 2011
Lisp - Símbolos
Continuaremos a usar nossa apostila (Ap.).
De forma simplificadora, podemos dizer que os símbolos em Lisp são as variáveis.
Um símbolo pode ter um valor como dado e, independentemente, um valor como função (Ap. 4.1). Veremos nesta aula como alterar estes valores (Ap. 4.2), e, no processo, falaremos sobre a avaliação de expressões em Lisp.
Por fim, veremos maneiras de inibir a avaliação, total ou percialmente (Ap. 4.3).
De forma simplificadora, podemos dizer que os símbolos em Lisp são as variáveis.
Um símbolo pode ter um valor como dado e, independentemente, um valor como função (Ap. 4.1). Veremos nesta aula como alterar estes valores (Ap. 4.2), e, no processo, falaremos sobre a avaliação de expressões em Lisp.
Por fim, veremos maneiras de inibir a avaliação, total ou percialmente (Ap. 4.3).
Lisp - Estrutura da linguagem
Continuaremos a usar nossa apostila (Ap.).
Um programa em Lisp consiste na definição de novas funções, para que possam ser usadas no contexto desejado.
Veremos nesta aula a estrutura básica de um programa em Lisp, incluindo a definição de funções (Ap. 3.1), o uso de condicionais (Ap. 3.2) e o uso de variáveis locais (Ap. 3.3).
Um programa em Lisp consiste na definição de novas funções, para que possam ser usadas no contexto desejado.
Veremos nesta aula a estrutura básica de um programa em Lisp, incluindo a definição de funções (Ap. 3.1), o uso de condicionais (Ap. 3.2) e o uso de variáveis locais (Ap. 3.3).
Assinar:
Postagens (Atom)