Cálculo de Programas

Licenciaturas em Engenharia Informática e Ciências da Computação

Tópicos

Avisos

13-Set - Época especial, notas finais: verAlunos.

5-Set - O Exame da época especial terá lugar dia 7-Set, às 14h00, na sala CP1-308.

23 Jul - Orais: as orais terão lugar na sala DI 1.08.

21 Jul - Notas finais: ver Alunos. Os alunos marcados com "oral" deverão comparecer no DI sexta-feira dia 24-Jul às 15h da tarde. A sala será indicada brevemente.

17 Jul - Consulta do exame de recurso: será segunda-feira, dia 20-Jul, das 08h às 12h, na sala DI 1.08.

17 Jul - Notas do exame de recurso de 07-Jul: ver Alunos

06 Jul - Exame de recurso amanhã, 07-Jul, às 16h00: terá lugar nas salas da cantina de Gualtar. O exame é sem consulta exceptuando o formulário disponível no material pedagógico da disciplina, que os alunos deverão trazer consigo impresso.

04 Jul - Publicado no Material Pedagógico o enunciado do teste de 16-Jun, com a correcção.

01 Jul - Sessão para ver o teste: será amanhã, dia 2-Jul, das 14h às 16h, na sala DI 0.11.

01 Jul - Notas do teste de 16-Jun: ver Alunos

15 Jun - Teste amanhã, 20h: o teste é sem consulta exceptuando o formulário disponível no material pedagógico da disciplina, que os alunos deverão trazer consigo impresso.

14 Jun - Alteração da hora do teste: por falta de salas, o teste de CP será realizado no mesmo dia em horário pós-laboral: 20h00 às 22h30, dia 16-Jun, salas CP2 201, 202 e 203 (ou 204).

14 Jun - Anúncio de aulas suplementares: LEI: turnos TP4 e TP5, dia 15 de Junho, das 11:00 - 13:00, na sala 103 do CPI; LCC: turno TP1, dia 15 de Junho, das 11:00 - 13:00, na sala 103 do CPI.

11 Jun - Data e hora do Teste de CP: Ter, 16 de junho, 18:00-20:00.

10 Jun - Estão a ser publicadas FAQs sobre exercícios em Atendimento.

09 Jun - Notas dos TPs: ver Alunos.

01 Jun - LCC, Turno TP2: chama-se a atenção dos alunos para a aula suplementar que terá lugar dia 4-Jun das 15h30 às 17h30 na sala CP1 104 - ver Sumários.

01 Jun - Defesas dos TPs: ver horário das orais em Alunos.

29 Mai - Instruções para entrega do TP: ver Alunos.

24 Mai - Publicada no Material a ficha nr.12, a preparar para as aulas TP da última semana de aulas.

24 Mai - Data limite para entrega do trabalho prático: 31 Mai 2015, até às 23h59m. Detalhes em Material.

21 Mai - Horário de apoio ao projecto: sala DI 0.02 nos períodos indicados no calendário da disciplina.

17 Mai - Publicada no Material a ficha nr.11, a preparar para as aulas TP da semana de 18-Mai.

05 Mai - LEI, Turnos TP1 e TP2: chama-se a atenção dos alunos para a alteração da hora da aula de reposição amanhã de tarde, que será às 16h00 e não às 14h00 como inicialmente previsto - ver Sumários.

02 Mai - Publicada no Material a ficha nr.10, a preparar para as aulas TP da semana de 04-Mai.

29 Abr - LEI, Turnos TP1 e TP2: chama-se a atenção dos alunos para novas alterações (temporárias) no horário destes turnos e para as aulas de substituição previstas nos Sumários.

28 Abr - Publicado na Bibliografia o último capítulo ( 450K) dos apontamentos.

26 Abr - Publicada no Material a ficha nr.9, a preparar para as aulas TP da semana de 27-Abr.

25 Abr - Trabalho prático: enunciado e material publicados em Material

24 Abr - Publicados os grupos de trabalho em Alunos

24 Abr - Informação sobre Trabalho prático: ver Material

19 Abr - Publicada no Material a ficha nr.8, a preparar para as aulas TP da semana de 20-Abr.

15 Abr - LEI, Turnos TP1 e TP2: chama-se a atenção dos alunos para as alterações (temporárias) no horário destes turnos e para as aulas de substituição previstas nos Sumários.

12 Abr - Publicada no Material a ficha nr.7, a preparar para as aulas TP da semana de 13-Abr.

09 Abr - Registo de grupos para trabalho prático: ver Alunos

04 Abr - Publicada no Material a ficha nr.6, a preparar para as aulas TP da semana de 07-Abr.

20 Mar - Publicada no Material a ficha nr.5, a preparar para as aulas TP da semana de 23-Mar.

16 Mar - Publicado na Bibliografia mais um capítulo ( 550K) dos apontamentos.

14 Mar - Publicada no Material a ficha nr.4, a preparar para as aulas TP da semana de 16-Mar.

07 Mar - Publicada no Material a ficha nr.3, a preparar para as aulas TP da semana de 9-Mar.

27 Fev - Publicada no Material a ficha nr.2, a preparar para as aulas TP da semana de 2-Mar.

23 Fev - Publicada a página de Bibliografia.

21 Fev - Publicada no Material a ficha nr.1, a preparar para as aulas TP da semana de 23-Fev.

17 Fev - Inscrição nos turnos TP: será feita no sistema de e-learning: LEI- 18-Fev, das 10h00 às 18h00; LCC - 20-Fev, das 10h00 às 18h00

11 Fev - Início das aulas: ver Sumários.

11 Fev - Criada esta página de avisos.

-- JoseNunoOliveira - 11 Feb 2015

Benvindo a Cálculo de Programas

Bem vindo à página da edição de 2010/11 da disciplina de Cálculo de Programas. O meu nome é José Nuno Oliveira e sou o responsável por esta disciplina, que conta com uma equipa de docentes altamente qualificados na investigação e ensino de métodos que, como os que se leccionam nesta disciplina, estão na base da abordagem científica ao desenvolvimento de software. TFM09.jpg Todos fazemos parte do Laboratório HASLab (Formal Methods for High-Assurance Software), em que se vem consolidando know-how em métodos formais de programação desde há mais de 25 anos.

A palavra "programa" vem do grego "programma", uma derivação de "prographein" = "pro" (antes) + "graphein" (escrever). Isto sugere que alguém que programa deve pensar antes no que vai fazer.

Tratando-se de programas de computador, essa sugestão é da maior importância: os programas escritos sem se pensar antes têm normalmente erros subtis que os testes não detectam e que constituem não só um perigo (por exemplo, em software crítico) mas também um custo acrescido para as empresas que os desenvolvem.

Cada vez mais, a indústria pede às universidades que ensinem a programar a sério, isto é, de forma a evitar tais erros. Para isso, é preciso introduzir a noção de cálculo em programação, isto é, uma disciplina que nos ajude a pensar os programas, raciocinar sobre eles e obter versões eficientes sem que a sua correcção fique comprometida.

A Universidade do Minho tem uma longa tradição neste tipo de ensino. Cálculo de Programas é a cadeira que, nas licenciaturas de Eng. Informática e Ciências da Computação, ensina tais competências. Mais do que tecnologia ensina-se método, que é afinal aquilo que a maioria dos programadores não tem de facto.

Resultados da Aprendizagem

Quien sabe por Algebra, sabe scientificamente.
Pedro Nunes(1502-1578) in Libro de Algebra, 1567, fol 270r.

  • Análise de programas: escrever programas funcionais com recurso a combinadores algébricos.

  • Transformação de programas: recurso à algebra da programação para se obterem programas mais eficientes a partir de outros.

  • Compreensão de programas: recurso à factorização em pares "fold" + "unfold" (hilomorfismos) como forma de se perceber o significado de um programa funcional.

  • Síntese de programas: cálculo de ciclos-for a partir de definições indutivas da matemática.

  • Programação funcional avançada: construir e raciocinar sobre programas funcionais com efeitos sob a forma de mónades.

Página principal

Entrar aqui.

r28 - 15 Feb 2011 - 11:50:56 - JoseNunoOliveira
This site is powered by the TWiki collaboration platform Copyright © by the contributing authors. Ideas, requests, problems? Send feedback.
Syndicate this site RSSATOM