Este sítio tem como foco as atividades de pesquisa e ensino de Leonel Figueiredo de Alencar, Dr. phil., professor de língua alemã no Departamento de Letras Estrangeiras da Universidade Federal do Ceará em Fortaleza, Brasil, e de lingüística teórica e lingüística computacional no Programa de Pós-Graduação em Lingüística dessa instituição, e coordenador do Grupo de Pesquisa Computação e Linguagem Natural (CompLin).
Como orientador de dissertações de mestrado e de teses de doutorado, tenho como foco as seguintes áreas:
1) lingüística computacional e lingüística de corpus, com ênfase na utilização das linguagens Prolog e Python (sobretudo da biblioteca NLTK)
a) compilação, etiquetagem automática e processamento de corpora eletrônicos (ver Projeto CORPTEXLIT)
b) técnicas de estados finitos no tratamento computacional da morfologia (ver exemplo de transdutor lexical)
c) formalismos gramaticais baseados em estruturas de traços (sobretudo LFG e HPSG)
d) tradução automática
2) lingüística teórica ou descritiva do português, alemão ou inglês, sobretudo num enfoque comparativo a partir de modelos formais de orientação gerativista ou congênere
a) morfologia
b) sintaxe
c) semântica
Enquanto área de interseção entre o estudo das línguas humanas, a informática e a ciência da computação, a lingüística computacional tem uma dimensão tanto teórica quanto aplicada. No primeiro caso, utiliza-se o computador para verificar a consistência interna e a adequação empírica de teorias da linguagem natural. Sob a segunda perspectiva, a disciplina faz interface com a engenharia de softwares, uma vez que está voltada para a construção de programas capazes de simular o desempenho lingüístico de falantes de uma língua natural em um ou mais de um dos diferentes níveis de análise. Sintetizadores de voz (veja aqui um exemplo), corretores ortográficos e gramaticais, conjugadores verbais, analisadores morfológicos, analisadores morfossintáticos e tradutores automáticos são apenas algumas das muitas aplicações da lingüística computacional no cotidiano. Outra aplicação importante da lingüística computacional é o ensino de línguas mediado por computador (área conhecida pela sigla CALL, do inglês Computer Assisted Language Learning).
Na Universidade Federal do Ceará, a disciplina HBP727 Lingüística Computacional é oferecida no âmbito do Programa de Pós-Graduação em Lingüística, em nível de mestrado e doutorado. No âmbito do Curso Especialização em Estudos da Tradução, é oferecida a disciplina HCE033 Tradução automática e intermediada por computador. Uma perspectiva computacional também é adotada nas seguintes disciplinas:
Tradicionalmente, as ferramentas de análise automática de textos do sistema operacional Unix, como grep, wc e uniq, têm sido empregadas com grande proveito, há algumas décadas, na exploração de corpora lingüísticos. Mais recentemente, no âmbito da lingüística de corpus, Python tem assumido um papel cada vez mais importante, em substituição à linguagem Perl, que praticamente dominou o cenário na década de 1990 e no início do presente século. No campo da lingüística computacional stricto sensu, Python se destaca como uma das linguagens de programação mais importantes na modelação dos diferentes componentes das gramáticas das línguas naturais. De fato, não é apenas suficientemente poderosa para implementar os complexos algoritmos necessários para o processamento da linguagem natural, mas é também especialmente fácil de aprender por pessoas sem uma formação em ciência da computação, como é o caso da maioria dos estudantes de lingüística em nossa universidade. Uma evidência disso é a sua utilização no Natural Language Toolkit (NLTK), uma caixa de ferramentas implementadas como uma biblioteca em Python, destinada à análise automática de textos e ao processamento computacional em nível sintático e semântico das línguas naturais.
O tópico principal do sítio é o uso das ferramentas de análise automática do Unix na lingüística de corpus bem como a aplicação da linguagem de programação Python em vários campos relacionados à investigação lingüística e ao ensino e aprendizagem de línguas. Um objetivo secundário é mostrar as vantagens da utilização de softwares "livres", gratuitos e de código-aberto por estudantes e pesquisadores nas áreas de Letras e Lingüística. Isso é exemplificado por meio de diversos programas que revelam o potencial desses recursos nas seguintes áreas:
O sítio, que ainda se encontra em construção, apresentará tanto scripts na linguagem do interpretador de comandos bash do Unix quanto scripts de CGI em Python por meio dos quais os estudantes podem experimentar interativamente com os programas elaborados nessa linguagem a serem aqui explicados.
Um primeiro exemplo de script de CGI em Python permite calcular o máximo divisor comum (MDC) de uma seqüência de números inteiros. Este script, de minha autoria, implementa algoritmo simples, desenvolvido por mim mesmo, que, embora talvez não tão elegante, calcula de forma correta o MDC de dois ou mais números.
Pelo que sabemos, trata-se do único programa livremente disponível em língua portuguesa na WWW capaz de calcular o MDC de mais de dois números. O programa do Professor Cardy, por exemplo, opera com dois números apenas.Outros exemplos de scripts de CGI em Python:
