Esta UC insere-se no 3º ano do mestrado integrado em engenharia informática, a meio da formação do aluno e no fim do 1º ciclo onde se pretende alcançar uma formação base na área do curso, situando-se na subárea das Ciências da Computação. A UC de Processamento de Linguagens usa os conhecimentos adquiridos nas UCs antecedentes de Programação, nomeadamente de algoritmos imperativos e de estruturas de dados (tabelas, árvores e grafos). O objetivo geral é ensinar formalismos para especificar as linguagens e técnicas para derivar desses formalismos programas para reconhecer e transformar frases dessas linguagens.
- Capacidade de especificar linguagens de domínio específico através de gramáticas;
- Capacidade de desenvolver processadores para essas linguagens com base na respetiva gramática;
- Capacidade de extrair dados de um texto com base em regras de produção (padrão-ação) baseadas em expressões regulares;
- Capacidade de transformar qualquer texto num outro formato com base em regras de produção (padrão-ação) baseadas em expressões regulares;
- Capacidade para usar programas que produzem programas com base em especificações formais (geradores de analisadores léxicos e de compiladores);
- Conhecimentos sobre autómatos como modelos formais de máquinas de estado e base de reconhecedores de frases guiados por tabela;
- Capacidade de utilização de ferramentas genéricas de informática em ambiente Linux baseadas em expressões regulares, em grafos ou outras.
Mike Ângelo Freitas |
Tomás Campinho |
Pedro Gomes |