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).

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.

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.

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).

Prolog - Predicados pré-definidos

Continuaremos a usar a nossa apostila (Ap.).

Veremos hoje alguns predicados pré-definidos da lingaugem Prolog (Ap. 7).

True, repeat (Ap. 7.1).

var(X), novar(X), atom(X), number(X), atomic(X) (Ap.7.2).

listing, listing(P), asserta(X), assertz(X), retract(X) (Ap. 7.3).

last(X, L), reverse(L, M), delete(X, L, M) (Ap. 7.4).

subset(X, Y), intersection(X, Y, Z), union(X, Y, Z) (Ap. 7.5).

X ..= L, random(N), findall(X, M, L), ; (Ap. 7.6).

sábado, 24 de setembro de 2011

Prolog - Entrada e saída

Continuamos a usar a apostila (Ap).

Prolog oferece predicados para a entrada e saída de termos (Ap. 6.1), e de caracteres (Ap. 6.2).  Os dispositivos para entrada e saída padrão são o teclado e a tela, respectivamente, mas podem ser trocados por arquivos (Ap. 6.3).

Veremos também como "consultar" arquivos, ou seja, carregar no banco de dados cláusulas de um arquivo de texto (Ap. 6.4).

Por fim, entrada e saída se relacionam com a definição de operadores: predicados que podme ser escritos de forma infixa ou posfixa (Ap. 6.5).

Prolog - Ressatisfação e corte

Continuamos usando a apostila (Ap).

Revisão de ressatisfação (backtracking) (Ap. 5, 5.1).

Introdução ao corte, um predicado extra-lógico (Ap. 5.2).

Usos do corte: indicar a cláusula correta, negação, limitar buscas (Ap. 5.3).

Cuidados com o corte: igualdade pode não mais ser equivalente a usar variáveis com o mesmo nome (Ap. 5.4).