Últimas notícias
21 de junho
As notas do terceiro trabalho já saíram. Tivemos muitos e muitos zeros porque muitos grupos entregaram trabalhos que nem compilam e dizeram na folha de capa que o trabalho funcionava. Tivemos algumas notas bem baixas porque os trabalhos não funcionam. A maioria dos trabalhos entregues não funciona por problemas simples de resolver.
Nestes dias os meus horários estão bem aleatórios. Diria eu que é extremamente provável
me encontrar de manhã bem cedo. Ou no fim da tarde, depois das 18h.
21 de junho
Muitas pessoas me pediram para adiar o trabalho,
inclusive muitas que não precisam de nota. Então resolvi adiar a entrega do
terceiro trabalho para Quinta feira. Algumas pessoas entregaram o trabalho às
pressas e não conseguiram nota para ficar com média de trabalho >= 6. Então,
excepcionalmente, vou aceitar que os que já entregaram o trabalho entreguem uma
nova versão. Afinal, estas pessoas não sabiam que o trabalho seria adiado.
As notas dos trabalhos já entregues sairão hoje à noite, muito provavelmente
antes das 20h.
9 de junho
Coloquei mais uma lista
de exercícios na página. Seria bom que vocês resolvessem esta lista. Em
particular, estou simpatizando bastante com os métodos LR(0) e SLR(1) ...
Ao estudar para a prova, estude sempre como funcionam os métodos e técnicas e principalmente porquê funcionam.
Estarei na minha sala Segunda à tarde toda e parte da noite. Na Quarta feira, só estarei na minha sala depois das 17:15.
7 de junho
Matéria para a prova:
- da apostila em Português: seções 1.2, 1.3 e 1.4, capítulos 4 e 7;
- análises LR(0) e SLR;
- expressões regulares. Tradução de expressões regulares para autômatos finitos e destes para código em Java.
Não haverá tempo de apresentar as seções 1.2, 1.3 e 1.4 para a turma de Quinta. Contudo, estas seções farão parte da prova, que valerá bem mais do que 10.
4 de junho
A especificação (quase) completa do trabalho
alternativo já saiu.
31 de maio
As notas do trabalho já saíram. Os grupos
- Eduardo
Okubo e Priscila Furuya
- Luís
Fernando Kimura e Renan Polo Montebelo
- André
Luiz Lyra
devem me procurar, preferencialmente no intervalo da aula ou no fim dela, para explicar que partes do trabalho entregue não funcionam. Só informações mais detalhadas sobre o trabalho eu posso dar a nota.
27 de maio
Na gramática para analisadores sintáticos, faltou colocar a produção nula, a que aparece agora depois de "{" Production "}":
Grammar ::=
Rule { Rule }
Rule ::=
RuleName "::=" Prodution { "|" Production }
Production
::= ( Terminal
| RuleName
| "[" Production "]"
| "{" Production
"}" | ) { Production }
RuleName
::= Ident
21 de maio
Imprimam o Mini-manual
sobre o método LR(0)
de análise ascendente.
Não deixei este manual
no xerox pois não
consegui uma impressora boa o suficiente
para imprimir os índices
(como
0 em S0) claramente.
Este manual deve ser
lido com as páginas
150-165 do livro
Dick Grune, Henri E. Bal, Ceriel J. H. Jacobs, and Koen G.
Langendoen. Modern Compiler Design. John Wiley &
Sons, 2000.
Estas páginas estão no xerox
da produção.
10 de maio
algumas pessoas me
pediram para adiar o trabalho
para segunda ou
terça da semana que
vem. Tudo bem. O trabalho
então fica para 21 de Maio,
uma Sexta feira. A data
de entrega do próximo trabalho
será 21 de Junho até
as 11 da manhã. O terceiro
trabalho é bem fácil,
não deve trazer nenhuma dificuldade.
7 de Maio
Pessoal, quem quizer fazer o gerador de analisadores sintáticos recursivos descendentes deve utilizar a gramática
Grammar ::=
Rule { Rule }
Rule ::=
RuleName "::=" Prodution { "|" Production }
Production
::= ( Terminal | RuleName
| "[" Production "]"
| "{" Production
"}" ) { Production }
RuleName
::= Ident
Eu
não defini explicitamente as restrições que a gramática deve seguir. Estas restrições serão apresentadas nas próximas aulas.
3 de Abril
As notas dos trabalhos já saíram. Vocês podem me procurar a qualquer hora para ver os trabalhos. Veja os horários
em que estou em minha sala.
28 de Abril
A prova desta Quinta feira começará às 9:30, como a turma decidiu na última aula.
As notas da prova de Terça já estão disponíveis. A correção e revisão da prova será na próxima aula.
27 de Abril
A
prova de Terça e sua resolução já estão neste site.
19 de Abril
Pessoal, as mensagens que tenho enviado para a lista da disciplina têm voltado. Então eu sugiro que vocês vejam esta página regularmente. Isto significa também que não devo estar recebendo mensagens que vocês enviam para a lista. Então, ao fazer uma pergunta, envie a mensagem para a lista e também para mim em jose#dc.ufscar.br (troque # por @).
Não teremos tempo
de ver com mais
detalhes o compilador 10. Então
não farei modificações na apostila
por causa deste compilador.
Vocês podem tirar xerox
da seção 10 da apostila “Learning
Compiler Construction by Examples”. Esta seção já está disponível no Xerox da produção. E obviamente também neste site.
15 de Abril
O
segundo trabalho estava muito grande. Retirei da sua especificação a impressão dos métodos chamados durante a análise sintática, o que é feito pelo compilador 11. De qualquer forma, veja a saída do
compilador 11 para um programa exemplo.
14 de Abril
O segundo trabalho já está disponível. O compilador
11 também. Execute-o e veja a sua saída
― é interessante.
26 de março
Pegue a resolução
do exercício dado em aula.
22 de março
Na última aula eu tinha marcado uma provinha valendo dois pontos para esta semana. Esta provinha foi adiada para a semana que vem. Assim teremos tempo para fazer um exercício completo de um pequeno compilador esta semana.
19 de março
Na próxima aula dia 23 (terça) e 25 (quinta) haverá uma provinha valendo dois pontos, que serão acrescentados à nota da primeira prova. Eu tinha falado 1 ponto para a turma de terça. Este valor foi aumentado para 2.
Devo colocar as apostilas no xerox da Produção na Segunda feira. Se não o fizer, alguém por favor me envie um email.