Pular para conteúdo

Documentação da Linguagem Potigol

Logo Potigol

Linguagem moderna para aprender a programar.
Multiparadigma: Funcional, Imperativo e Orientado a Objetos
Foco educacional: Sintaxe intuitiva em português


Principais Recursos

  • Para Iniciantes
    Sintaxe intuitiva · Erros descritivos · Debugging fácil

  • 🇧🇷 Sintaxe em Português
    escreva · leia_inteiro · verdadeiro · escolha

  • Programação Funcional
    Imutabilidade · Funções puras · Recursão · Casamento de Padrões

  • Tipagem Forte
    Inferência de tipos · Conversão segura · Checagem estática


Olá Mundo Multiparadigma

# Estilo tradicional
escreva "Olá Mundo!"
# Abordagem declarativa
saudação = (nome: Texto) => "Ola {nome}!"
escreva saudação("Mundo")
# Uso de classes
tipo Ola
  nome: Texto
  saudação() = "Olá {nome}!"
fim

olamundo = Ola("Mundo")
escreva olamundo.saudação

Experimente Agora

# Exemplo de execução
$ potigol ola.poti
Olá Mundo!

Tópicos da Documentação

  1. Básico

  2. Estruturas

  3. Paradigmas

  4. Avançado


FAQ Rápido

Para quem é o Potigol?

Ideal para estudantes brasileiros iniciantes em programação e educadores que querem ensinar conceitos modernos de forma acessível.

Posso usar em produção?

Foco educacional, mas adequado para scripts simples. Para sistemas complexos, considere linguagens como Elixir ou Python.

Como comparar com Portugol?

Comparação Detalhada: Potigol vs Portugol

Característica Potigol Portugol 🏛
Paradigmas Multiparadigma (Funcional, OO, Imperativo) Principalmente Imperativo
Sistema de Tipos Estático com Inferência de tipos Estático sem Inferência
Sintaxe Moderna com palavras-chave em PT-BR
escreva, para, caso
Tradicional baseada em pseudocódigo
escreva, leia, se
Recursos Avançados Pattern Matching
Funções de Alta Ordem
Imutabilidade
Foco em estruturas básicas
Orientação a Objetos Classes, Herança, Polimorfismo Não suportado
Ambiente de Desenvolvimento Gitpod, VS Code, CLI IDEs locais (Visualg, Portugol Studio)
Casos de Uso Educação moderna, prototipagem rápida Introdução absoluta à programação

Exemplo Comparativo

# Cálculo fatorial com recursão e pattern matching
fatorial(n: Inteiro): Inteiro = escolha n
  caso 0 => 1
  caso _ => n * fatorial(n - 1)
fim

escreva fatorial(5)  # 120
algoritmo "Fatorial"
var
    n, resultado: inteiro
inicio
    resultado <- 1
    leia(n)
    para i de 1 ate n faca
        resultado <- resultado * i
    fimpara
    escreva(resultado)
fimalgoritmo

Quando Escolher?

Escolha Potigol se... Prefira Portugol para...
Quer ensinar conceitos modernos Introdução absoluta à lógica
Precisa de recursos funcionais/OO Apenas algoritmos imperativos
Deseja integração com ferramentas atuais Ambientes educacionais tradicionais
Busca comunidade ativa para suporte Material didático consolidado

Dica: Potigol é excelente para transição entre programação básica e linguagens profissionais como Python ou JavaScript.