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.
segunda-feira, 7 de novembro de 2011
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).
domingo, 23 de outubro de 2011
Lisp - Elementos da linguagem
Acompanhe pela apostila (Ap.). Nesta aula veremos:
Tipos existentes em Lisp (Ap. 2.1).
Tipos atômicos: números (Ap. 2.2), símbolos (Ap. 2.3) e strings.
Tipos não atômicos: pares-com-ponto, (Ap. 2.4), entre os quais estão as listas, e sua representação gráfica (Ap. 2.5).
Primeiras funções LISP: car, cdr, e cons (Ap. 2.6).
Coleta de lixo (Ap. 2.7).
Tipos existentes em Lisp (Ap. 2.1).
Tipos atômicos: números (Ap. 2.2), símbolos (Ap. 2.3) e strings.
Tipos não atômicos: pares-com-ponto, (Ap. 2.4), entre os quais estão as listas, e sua representação gráfica (Ap. 2.5).
Primeiras funções LISP: car, cdr, e cons (Ap. 2.6).
Coleta de lixo (Ap. 2.7).
sábado, 22 de outubro de 2011
Lisp - Introdução
Temos uma apostila (Ap.) para acompanhar as aulas da Lisp. Nesta aula teremos:
Breve história de Lisp (Ap. cap. 1).
Alguns programas famosos: derivada simbólica (Ap. 1.1), psiquiatra (Ap. 1.2), médico (Ap. 1.3).
Por fim, algumas dicas sobre como usar um interpretador Lisp.
Breve história de Lisp (Ap. cap. 1).
Alguns programas famosos: derivada simbólica (Ap. 1.1), psiquiatra (Ap. 1.2), médico (Ap. 1.3).
Por fim, algumas dicas sobre como usar um interpretador Lisp.
segunda-feira, 10 de outubro de 2011
Prolog - Gramáticas
Continuamos usando a apostila (Ap.).
Prolog é muito usada em processamento de linguagens naturais, onde aparece o problema da análise léxica de frases (Ap. 9.1).
É bastante simples codificar gramáticas livres de contexto em Prolog (Ap. 9.2), que conta com uma notação especial para este fim (Ap. 9.3).
Argumentos adicionais podem ser usados para resolver a questão dos plurais (Ap. 9.4), entre outras aplicações.
Prolog é muito usada em processamento de linguagens naturais, onde aparece o problema da análise léxica de frases (Ap. 9.1).
É bastante simples codificar gramáticas livres de contexto em Prolog (Ap. 9.2), que conta com uma notação especial para este fim (Ap. 9.3).
Argumentos adicionais podem ser usados para resolver a questão dos plurais (Ap. 9.4), entre outras aplicações.
sábado, 1 de outubro de 2011
Prolog - Depuração
Seguiremos usando a apostila (Ap.).
Predicados trace, notrace, spy(P), nospy(P), debugging (Ap. 8.1).
Pontos de atenção: call, exit, redo, fail (Ap. 8.1).
Ações: w (write), c (creep), a (abort) e outras. "Creep" também com espaço ou enter (Ap. 8.1).
Predicados trace, notrace, spy(P), nospy(P), debugging (Ap. 8.1).
Pontos de atenção: call, exit, redo, fail (Ap. 8.1).
Ações: w (write), c (creep), a (abort) e outras. "Creep" também com espaço ou enter (Ap. 8.1).
Assinar:
Postagens (Atom)