MAC0316/MAC5754 - Conceitos de Linguagens de Programação

Primeiro Semestre de 2010

Prof. Francisco Reverbel

. Informações gerais
. Ementa de MAC0316
. Ementa de MAC5754
. Trabalhos propostos
. Bibliografia
        
. Recursos adicionais na Internet
. Diário de bordo
. Área no Moodle
. Notícias e avisos
. Fórum de discussão
                 

At work icon Esta página estará em permanente construção até o final do semestre...

Informações Gerais

. Horário: terças das 10:00 às 11:40, quintas das 08:00 às 09:40
. Local: Sala 9 do bloco B do IME
. Monitores: André Jucovsky Bianchi (ajb arroba ime ponto usp ponto br) e Thiago Rodrigues Colucci (thiagorcolucci arroba gmail ponto com)
. Avaliação: provas (três) e exercícios-programa (número a ser definido)
     . Média de provas: MP = (P1 + 2 P2 + 2 P3)/5
     . Média de EPs: Os pesos dos EPs serão definidos durante o semestre.
     . Média final de MAC0316: se MP >=5 e ME >= 5
então MF = (2 MP + ME)/3
senão MF = min {MP, ME}
     . Prova substitutiva: Está prevista uma quarta prova P4, para alunos que comprovadamente estiveram impossibilitados de comparecer a alguma das três provas anteriores. A nota dessa prova substitui a nota da prova que não foi feita, ou, no caso de quem perdeu mais do que uma prova, substitui uma das provas não feitas, de forma a maximizar a média de provas.
     . Datas das provas: 23 de março (P1), 11 de maio (P2), 15 de junho (P3) e 22 de junho (P4 - substitutiva)
. Recuperação: Os alunos de MAC0316 que ficarem com média final maior ou igual a 3 e menor que 5 terão direito de fazer recuperação.
     . Quem tiver menos que 5 na média de provas MP deverá fazer a prova de recuperação (PRec) e terá sua média de provas recalculada como Nova_MP = (MP + 2 PRec)/3.
     . Quem tiver menos que 5 na média de exercícios-programa ME deverá entregar EPs de recuperação e terá sua média de exercícios programa recalculada como Nova_ME = (ME + 2 EPRec)/3, onde ME é a média dos EPs do semestre e EPRec é a média dos EPs de recuperação.
     . A média final de recuperação será calculada como a do semestre, usando-se, conforme o caso, a nova média de provas e/ou a nova média de exercícios-programa.

Trabalhos Propostos

. Exercícios de Scheme (dois desses exercícios devem ser entregues até o dia 22 de março).
. Primeiro exercício-programa (prazo: 16 18 de abril).
. Segundo exercício-programa (prazo: 13 16 de maio).
. Terceiro exercício-programa (prazo: 28 de junho).

Bibliografia

. Sriram Krishnamurthi, Programming Languages: Application and Interpretation.
Este livro, conhecido como PLAI, está disponível no sítio do autor. O PLAI é o livro-texto que seguiremos ao longo do semestre.
. Dorai Sitaram, Teach Yourself Scheme in Fixnum Days.
Este texto introdutório sobre a linguagem Scheme será bastante usado nas duas primeiras semanas. No restante do semestre o "Teach Yourself Scheme" (TYS) servirá também como material de consulta. O TYS está disponível também no formato pdf.

Recursos Adicionais na Internet

. Sítio do PLT Scheme.
O PLT Scheme é a implementação de Scheme usada nesta disciplina.
. Guide: PLT Scheme.
Esse manual do PLT Scheme é um bom texto para quem está aprendendo a linguagem.
. Reference: PLT Scheme.
Material de consulta sobre o PLT Scheme.
. Documentação das extensões ao PLT Scheme específicas para o PLAI.
A primeira dessas extensões, o PLAI Scheme, será usada assim que começarmos a ver a matéria do PLAI (a partir da terceira semana de aulas).
. R6RS, a versão mais recente da padronização da linguagem Scheme.
Essa é a "definição oficial" da linguagem. O R6RS ("Revised6 Report on the Algorithmic Language Scheme") é um padrão recente, publicado em 2007.
. R5RS, a versão anterior da padronização da linguagem Scheme.
É essa a linguagem que o TYS descreve. Embora não seja o padrão mais recente, o R5RS é um texto que vale a pena ler e/ou consultar, pois ele é ao mesmo tempo completo, claro e conciso. Em apenas 50 páginas, esse texto define de modo inteligível todas as características da linguagem que foi o "Scheme oficial" no período de 1998 (ano da publicação do R5RS) a 2007 (quando saiu o R6RS).
. Sítio da linguagem Haskell.
Contém ponteiros para implementações de Haskell, livros, tutoriais, documentação, artigos acadêmicos, etc.
. Learn You a Haskell for Great Good!
Bom tutorial introdutório de Haskell. Escrito e ilustrado por Miran Lipovaca.
. Real World Haskell.
Sítio do livro de Bryan O'Sullivan, Don Stewart e John Goerzen. O texto completo do livro está disponível nesse sítio.
. Política do Departamento de Ciência da Computação para casos de plágio ou cola.
Esse texto aparece também na página inicial do sistema Paca/Moodle, como "Aviso aos usuários".


Valid CSS! Valid XHTML 1.0! Last modified: Wed Jun 9 22:46:17 BRT 2010
Francisco Reverbel
reverbel at ime.usp.br