Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # # # # # # # # # # # # # #
- # Linguagens de Programação #
- # Prof. Fernando Pereira #
- # notasdogarcia.blog.com #
- # # # # # # # # # # # # # #
- // Nota Pessoal: A Léxica de uma gramática é a correta ortográfia das palavras da mesma desconsiderando a gramática.
- // Isso não deve ser mto importante não.
- Nessa aula o professor começou mostrando um algoritimo falado para gerar um fractal, e partindo disso
- começou a mostrar uma gramática para realizar esse algoritimo, que a principio se parece com a de ftc.
- A diferença é que tendo uma regra A -> AA, eu tenho que aplicar regras a todas as variáveis de uma palavra ao mesmo tempo.
- Em outras palavras se tenho AA só posso transformar isso diretamente em AAAA aplicando a regra acima para ambas as variáveis simuntaneamente.
- O que é necessário para gerar uma gramática?
- 1 - Regras de produção.
- 2 - Alfabeto.
- 3 - Conjunto de terminais.
- 4 - Simbolo de partida.
- Notação de uma gramática simples:
- Notação BNF:
- <exp> ::= <exp> + <exp>
- | <exp> * <exp>
- | a
- | b
- | c
- Indicando que a exp mais a esquerda pode se tornar a, b, c ou a soma de duas expressoes ou o produto.
- Em outras palavras, temos:
- 1 - Regras são as 5 linhas, onde cada uma delas indica que <exp> pode se tornar ou a linha 1 ou a linha 2 ou ... etc.
- 2 - Alfabeto: <exp>.
- 3 - Conjunto de terminais: a,b,c,+,*.
- 4 - Simbolo de partida que é o <exp>.
- CONCEITO:
- Parsing é o ato de tranformar um programa em uma árvore de instruções, de forma que as folhas componham a tradução para uma linguagem de nível mais baixo.
- // Ou seja é o processo pelo qual um compilador traduz um programa para o código assembly por exemplo.
- // Por enquanto ele está demonstrando o uso de uma gramática, descrevendo vários exemplos incluíndo a própria linguagem do português.
- Gramatica de prolog (nós vamos estudar essa linguagem de programação no final do curso):
- sigNum --> number.
- sigNum --> signal, number.
- number --> digit.
- number --> digit, number.
- digite --> [0]; [1]; [2]; [3]; [4]; [5]; [6]; [7]; [8]; [9];
- signal --> [+]; [-];
- Couchetes denotam simbolos terminais, virgulas e ';' são separadores e setinhas são indicadores de substituição aparentemente.
- O professor falou que vai explicar essa linguagem em detalhes mais no fim do curso, por agora, ele não explicou bem poucos detalhes.
- Sobre alguns tipos de gramáticas (que inclusive já estudamos ftc) temos:
- Nós vamos estudar:
- - Gramática Regular.
- - Gramática Livre de Contexto.
- Nós não vamos estudar:
- - Gramáticas Sensíveis ao Contexto.
- - Gramáticas Irrestritas.
Advertisement
Add Comment
Please, Sign In to add comment