Compilaí v10
Compilador web multilinguagem — Portugol, C, Python, JavaScript, C++ e Java — desenvolvido pela Profª Ana Carolina para apoiar o ensino de programação, com registro INPI. Paralelamente, um trabalho de Iniciação Científica está desenvolvendo o Compilaí App: uma versão nativa para celular focada em Portugol.
Sobre o Projeto
Compilador Web Multilinguagem para Ensino de Programação
O Compilaí é uma ferramenta web desenvolvida pela Profª Ana Carolina Sokolonski Anton para apoiar o ensino de programação de forma acessível, interativa e eficiente. Na versão atual (v10), suporta 6 linguagens: Portugol (100% compatível com VisuALG), C, Python, JavaScript, C++ e Java — tudo rodando diretamente no navegador, sem qualquer instalação.
®
Registro de Software — INPI
Software registrado no INPI. Todos os direitos reservados à autora e ao IFBA.
O Compilaí inclui depurador passo a passo, mensagens de erro amigáveis com linha exata destacada, entrada interativa real (o programa pausa de verdade), tema claro/escuro e suporte a PWA — pode ser instalado no celular ou computador como um app, funcionando inclusive offline.
Histórico e Evolução
Da ferramenta web à versão mobile
O projeto nasceu como compilador de Portugol e evoluiu ao longo de 10 versões até se tornar uma plataforma multilinguagem completa — obra da Profª Ana Carolina. Paralelamente, um trabalho de Iniciação Científica está desenvolvendo o Compilaí App: uma versão nativa e separada, voltada para Portugol no celular.
Ferramenta web (Profª Ana Carolina)
Compilaí v10
Compilador multilinguagem: Portugol, C, Python, JavaScript, C++ e Java. Depurador passo a passo, 186 testes automatizados, PWA instalável no celular e no computador. Disponível em
compilai.com.br.
Trabalho de IC (aluno bolsista)
Compilaí App
App mobile nativo para Portugol (iPhone e Android) em desenvolvimento como Iniciação Científica. Versão separada da ferramenta web, com interface projetada para a experiência mobile.
IC · CNPq · Em andamento
Iniciação Científica
Desenvolvendo o Compilaí App
O trabalho de IC tem como objetivo desenvolver uma versão app mobile nativa do Compilaí — separada da ferramenta web — focada em Portugol para iPhone e Android. A metodologia prevê revisão bibliográfica, estudo de compiladores e o desenvolvimento iterativo da aplicação com boas práticas de engenharia de software.
Os alunos bolsistas têm a oportunidade de aprender conceitos avançados sobre criação de compiladores, ferramentas similares como o VisuAlg, desenvolvimento mobile, e boas práticas de design de editores de código — tudo isso com orientação direta da autora da ferramenta original.
Além do desenvolvimento técnico, a pesquisa investiga como a versão mobile pode potencializar o ensino de lógica de programação, especialmente em contextos com acesso limitado a computadores.
📱
Interface Mobile
Editor de código adaptado para telas menores, com teclado virtual otimizado para sintaxe Portugol.
⚡
Execução Local
Compilação e execução diretamente no dispositivo, sem necessidade de conexão à internet.
📚
Material Didático
Integração com exemplos e exercícios para apoiar disciplinas de lógica de programação.
🔄
Paridade com a Web
Compatibilidade com a sintaxe Portugol da versão web, garantindo continuidade para os estudantes.
Equipe:
Autora e Desenvolvedora
Profa. Ana Carolina Sokolonski Anton
Idealização e Colaboração
Prof. Raimundo Carvalho Rabelo Filho
Aluno Bolsista · IC
Matheus Felipe de Oliveira Ferreira
CNPq
Exemplo de Código
Portugol em ação
Um programa de demonstração em Portugol cobrindo BubbleSort, operadores, estrutura escolha e recursão — compatível com VisuALG e executável diretamente em compilai.com.br:
algoritmo "Demonstração Compilaí"
// Testa: BubbleSort, operadores, escolha, funções, recursão
var
i, j, temp: inteiro
vetor: vetor[1..5] de inteiro
opcao: inteiro
funcao fatorial(n: inteiro): inteiro
var
r: inteiro
inicio
se n <= 1 entao
retorne 1
senao
retorne n * fatorial(n - 1)
fimse
fimfuncao
inicio
{ --- BubbleSort --- }
vetor[1] <- 5
vetor[2] <- 3
vetor[3] <- 4
vetor[4] <- 1
vetor[5] <- 2
para i de 1 ate 4 faca
para j de 1 ate 4 faca
se vetor[j] > vetor[j+1] entao
temp <- vetor[j]
vetor[j] <- vetor[j+1]
vetor[j+1] <- temp
fimse
fimpara
fimpara
escreval("Vetor ordenado:")
para i de 1 ate 5 faca
escreva(vetor[i], " ")
fimpara
escreval("")
{ --- Operadores --- }
escreval("10 \ 3 = ", 10 \ 3)
escreval("3 ^ 4 = ", 3 ^ 4)
escreval("10 mod 3 = ", 10 mod 3)
escreval("raizq(16) = ", raizq(16))
escreval("logn(e) = ", logn(2.718282828459)) { ln(e) ≈ 1 }
{ --- Escolha --- }
opcao <- 2
escolha opcao
caso 1:
escreval("Opcao um")
caso 2:
escreval("Opcao dois")
outrocaso
escreval("Outra opcao")
fimescolha
{ --- Recursão --- }
escreval("5! = ", fatorial(5))
fimalgoritmo
Ficha do Projeto
Autoria e Desenvolvimento
Profª Ana Carolina Sokolonski Anton
Idealização e Colaboração
Prof. Raimundo Carvalho Rabelo Filho
Registro INPI
Autora & IFBA
Versão Atual
v10 · 6 Linguagens · PWA
Foco da IC
Versão App mobile (Portugol)
Instituição
IFBA – Feira de Santana
Status
Em andamento
Bolsista
Matheus Felipe de Oliveira Ferreira