Notas finais (em 25/11) - depois de corrigir os erros apontados no dia 24. Parece que eu errei ou houve algum problema em converter os dados do classroom para csv - só isso explica o número de projetos 3 incorretamente sem nota apontados por voces.
Me contacte via email se ha algum problema com essas notas
Dois alunos ficaram de exame. O exame serão 4 questões do tipo das tarefas, nas 3 linguagens de programação da disciplina, e sera enviado via email no dia 15/12 ao meio dia e a resposta deve ser enviada para mim ate o meio dia do dia 16. Os alunos que ficaram de exame precisam confirmar via email ate o dia 1/12 que estão interessados em fazer o exame.
As aulas serão sincronas nos seguintes horarios:
3a: das 16h as 18h
5a: das 16h as 18h
Eu vou tentar limitar a duração das aulas a no maximo 90 minutos, ou seja muito provavelmente as aulas serão das 16 as 17 ou 17:30 horas. A gravação das aulas ficara disponível logo após a aula.
As aulas serão via google meet: https://meet.google.com/rui-wfzr-vbo
Discord da disciplina: https://discord.com/invite/z6xUMPcxs8
PED da disciplina: Lucas Castro l.castropg at gmail.com
dia 10/Agosto as 16 horas.
O objetivo da disciplina é apresentar ao aluno linguagens de programação que diferem de forma significativa das linguagens que ele já conhece, Python, C, e Java. Estas linguagens apresentam um conjunto de conceitos (também chamado de paradigmas) que vão expandir as formas com que um programador pode pensar na solução para um problema.
A disciplina abordará as seguintes linguagens de programação, nesta ordem:
Haskell, particularmente a implementação GHC 8.X ou GHC 9.X para a parte de linguagens funcionais.
Prolog, mais especificamente a implementação SWI-Prolog, para a parte de linguagens lógicas.
Alguns tópicos avançados em Python (versão 3.7 ou maior). Embora Python não seja por si só um exemplo de um novo paradigma de programação, ela nos permitirá discutir outros conceitos de programação em uma linguagem imperativa/tradicional. A disciplina assume que o aluno já sabe Python básico.
Breves conceitos sobre algumas linguagens recentes como Go e Rust (linguagens que substituem C), Scala e Julia (linguagens no nivel de abstração de Python), e talvez Closure, e ML ou F# (versões menos estritas de linguagens funcionais).
Haverá 12 ou mais testes. Cada teste recebe as notas 0 se há mais de um erro ou um erro mais serio, 1 se há apenas um erro de menor impacto, e 2 se não há erros.
Os testes serão postados nas 3a ferias e o aluno tem 24 horas para submeter a sua resposta via o Classroom.
Haverá ainda 3 projetos a serem entregues provavelmente via Susy ou via email. Os projetos terão notas entre 0 e 1, proporcional ao número de testes corretamente executados. Os projetos poderão ser feitos em grupos de até 3 pessoas.
A nota final será a (soma das 8 maiores notas dos testes e as notas dos 3 projetos com peso 4) tudo dividido por 2.8
final = (2* (8 melhores testes) + 4*(soma dos 3 projetos))/2.8
Não há substitutiva para os testes e os projetos não poderão ser entregues atrasados.
Alunos que tiverem feito pelo menos 6 testes e tiverem uma nota final entre 2.5 e 4.9 poderão fazer o exame. O exame devera ser feito em 24 horas e submetido via email.
tarefa 1 Ate 18 a meia noite
tarefa 2 Ate 25 a meia noite
tarefa 3 Ate dia 1/9 as 11:59.
tarefa 4 Ate dia 10/9 as 11:59.
tarefa 5 Ate dia 15/9 as 11:59.
tarefa 6 Ate dia 22/9 as 11:59.
tarefa 7 Ate dia 29/9 as 11:59.
tarefa 8 Ate dia 6/10 as 11:59.
tarefa 9 Ate dia 15/10 as 11:59.
tarefa 10 (versão 2 - corrigi a data de entrega que estava no texto) Ate dia 22/10 as 11:59.
tarefa 11 ate 28/10 as 11:59
tarefa 12 ate 2/11 as 11:59
projeto de haskell ate dia 14/9 as 8h da manha.
as notas do projeto 1 forma postadas no classroom com comentarios quando a nota nao é 100/100. Rodei 4 testes (2 grafos diferentes e 2 pequenas mudanças dentro do mesmo grafo), cujos resultados sao 7, 12, 7 e 10 (ou valores proximos disso). Os testes sao teste1, teste2, teste3, e teste4
projeto de prolog ate dia 15/10 as 8h da manha.
notas do projeto 2 foram postadas no classroom com comentarios no caso de algum erro. Os testes sao a.txt, b.txt e c.txt
projeto de python ate dia 5/11 as 8h da manha. notas do projeto 3 foram postadas no classroom com comentarios no caso de algum erro. Os testes sao tre1.txt, tre2.txt e tre3.txt. As respostas sao res1.txt res2.txt e res3.txt - a ordem nao é importante.
Livro texto: Learn you a Haskell for greater good
Uma lista de recursos para aprender Haskell
usaremos o SWI Prolog versão 8.X