JP Lang 🇧🇷

Linguagem de Programação em Português

Sintaxe intuitiva, compilação nativa para C++, performance excepcional.
Aprenda a programar na sua língua, com a velocidade de linguagens compiladas.

50x Mais rápido que Python
100% Código nativo
UTF-8 Suporte completo

Por que JP Lang?

Uma linguagem moderna que combina simplicidade com performance de nível profissional

🇧🇷

Sintaxe em Português

Comandos naturais como sair(), se, enquanto, para. Aprenda programação na sua língua materna!

Performance Nativa

Compila para C++ otimizado com flag -O3. Mesma velocidade de C/C++, 50x mais rápido que Python interpretado.

🎯

Tipagem Automática

Inferência inteligente de tipos. Escreva menos código, o compilador cuida do resto automaticamente.

📦

Módulos Nativos

Sistema único de bibliotecas com @imports/@exports. Integre código C++ puro facilmente.

🎨

Terminal Colorido

Comandos como sair_verde(), sair_vermelho() para saídas visuais atrativas.

🔧

Biblioteca Padrão Rica

Matemática, strings, tempo, random, arquivos - tudo incluído e pronto para usar.

Aprenda JP Lang em Minutos

Clique nos exemplos abaixo para ver mais detalhes

👋 Olá Mundo

Seu primeiro programa em JP Lang

sair("Olá, Mundo!") sair("Bem-vindo ao JP Lang")

Explicação:

  • sair() - Imprime texto na tela (equivalente ao print/cout)
  • Use aspas duplas para strings
  • Suporte completo a acentuação e UTF-8

📦 Variáveis

Declaração automática com inferência de tipos

nome = "João Silva" idade = 25 altura = 1.75 ativo = verdadeiro sair("Nome: {nome}, Idade: {idade}")

Tipos Suportados:

  • string - Texto entre aspas
  • int - Números inteiros
  • double - Números decimais
  • bool - verdadeiro/falso

Interpolação: Use {variavel} dentro de strings!

🎨 Saída Colorida

Torne seus programas mais visuais

sair_verde("✓ Operação bem-sucedida!") sair_vermelho("✗ Erro crítico!") sair_azul("ℹ Informação") sair_amarelo("⚠ Aviso importante")

Cores Disponíveis:

  • sair_verde() - Sucesso
  • sair_vermelho() - Erros
  • sair_azul() - Informações
  • sair_amarelo() - Avisos
  • sair_magenta(), sair_ciano(), etc.

🔀 Condicionais

Estruturas de decisão em português

idade = 18 se idade >= 18: sair_verde("Maior de idade") ou_se idade >= 13: sair("Adolescente") senao: sair("Criança")

Sintaxe:

  • se - Condição inicial (if)
  • ou_se - Condição alternativa (else if)
  • senao - Caso contrário (else)

Operadores: ==, !=, >, <, >=, <=, e, ou, nao

🔁 Loops

Repetições de forma intuitiva

// Repetir N vezes repetir(5): sair("Olá!") // Loop while contador = 0 enquanto contador < 3: sair(contador) contador = contador + 1 // Loop for com range para i em intervalo(1, 6): sair("Número: {i}")

Tipos de Loops:

  • repetir(n) - Executa n vezes
  • enquanto - While loop
  • para...em - For each/range

⚙️ Funções

Crie suas próprias funções reutilizáveis

funcao saudar(nome): sair("Olá, {nome}!") funcao somar(a, b): retorna a + b saudar("Maria") resultado = somar(10, 20) sair("Soma: {resultado}")

Características:

  • Templates automáticos - aceita qualquer tipo
  • Use retorna para retornar valores
  • Parâmetros flexíveis e tipagem automática

📋 Listas

Trabalhe com arrays/vetores facilmente

frutas = ["maçã", "banana", "laranja"] para fruta em frutas: sair(fruta) frutas.adicionar("uva") tamanho = frutas.tamanho() sair("Total: {tamanho}")

Métodos de Listas:

  • adicionar(item) - Adiciona elemento
  • remover(indice) - Remove por índice
  • tamanho() - Retorna tamanho
  • limpar() - Remove todos
  • vazia() - Verifica se está vazia

🏛️ Classes

Programação orientada a objetos

classe Pessoa: nome: texto idade: int funcao criar(nome, idade): este.nome = nome este.idade = idade retorna este funcao apresentar(): sair("Olá, sou {este.nome}") pessoa = Pessoa.criar("João", 25) pessoa.apresentar()

POO em JP Lang:

  • Use este para referenciar a instância (this/self)
  • Método criar() é o construtor
  • Tipos explícitos opcionais nos atributos
  • Compila para structs C++ eficientes

📚 Biblioteca Padrão

Funções úteis prontas para usar

// Matemática raiz = std.raiz(144) // 12 pot = std.potencia(2, 10) // 1024 // Random numero = std.aleatorio(1, 100) // Strings texto = std.maiuscula("hello") // Tempo std.pausa(1000) // 1 segundo std.limpar_tela()

Categorias da Stdlib:

  • Matemática: raiz, potencia, abs, arredondar, min, max
  • Random: aleatorio, aleatorio_decimal
  • Strings: maiuscula, minuscula, substituir, tamanho
  • Tempo: pausa, tempo_atual
  • Sistema: limpar_tela, parar

Performance Excepcional

JP Lang compila para C++ nativo com otimização -O3. Performance comparável a linguagens de sistema.

Linguagem Velocidade Relativa Tipo
JP Lang
100% (Nativo)
Compilado (C++)
C / C++
100%
Compilado
Rust
98%
Compilado
Go
80%
Compilado
Java
75%
JIT (VM)
JavaScript (V8)
40%
JIT
Python
2%
Interpretado
🚀

Otimização -O3

Compilação com máxima otimização: loop unrolling, inlining, vectorização SIMD automática.

Zero Overhead

Sem interpretador, VM ou Garbage Collector. Código de máquina direto, sem intermediários.

🎯

Templates C++

Funções genéricas compilam para código especializado e otimizado automaticamente.

Instalação e Uso

Comece a programar em JP Lang em menos de 5 minutos

1

Download

Baixe o compilador JP Lang para Windows:

2

Criar Programa

Crie um arquivo ola.jp com:

sair("Olá, JP Lang!")
sair_verde("Meu primeiro programa!")
3

Compilar e Executar

No terminal, execute:

jp.exe ola.jp

O executável será gerado em output/executavel/

📁 Estrutura de Arquivos

projeto/
├── jp.exe // Compilador
├── meu_programa.jp // Seu código
└── output/
├── codigo_cpp/ // C++ gerado
└── executavel/ // .exe final

Requisitos: Windows 7+ • Nenhuma dependência externa

Ver no GitHub →