Pular para o conteúdo

Matriz de compatibilidade da 0.1.0-rc.6

Esta matriz resume o estado de Pop 0.1.0-rc.6 voltado ao usuário. “Implementado” significa que o recurso é verificado e executável em seu caminho documentado. “Limitado” significa que existe uma base real, mas sua interface pública está incompleta.

Recurso Estado Limite
Funções e parâmetros/resultados tipados Implementado anotações de resultado não são inferidas
Inferência de variáveis locais inicializadas e atribuição Implementado a atribuição nunca altera o tipo inferido
if, elseif, valores condicionais Implementado condições exatamente Boolean e tipo comum aos ramos
while, repeat, for numérico Implementado intervalos inclusivos de inteiros; break e continue
for value in iterable generalizado Implementado protocolos nominais exatos; String produz Rune
Funções locais e closures Implementado o estado mutável capturado é compartilhado
Inteiros e floats de largura fixa Implementado floats decimais, ordenação completa, conversões explícitas verificadas
Strings Implementado escapes, .., interpolação com crases, formatação de primitivos
Pacotes fixos, tuplas, atribuição múltipla Implementado aridade exata; projeção estática de tupla com base um
Valores de função Implementado sem igualdade de funções
Arrays Implementado comprimento fixo, base um, operações limitadas
Tabelas tipadas Implementado consulta opcional e inserção/substituição; sem API de exclusão ou iteração
Registros e with Implementado literais agregados exigem um contexto esperado
Uniões discriminadas e match exaustivo Implementado sem curingas, guardas ou resultado de expressão
Classes Implementado identidade nominal; sem herança geral compatível
Interfaces Implementado implementação nominal explícita; sem corpos padrão
Constantes e funções em tempo de compilação Implementado grafo fechado de chamadas em tempo de compilação, com efeitos limitados
Atributos tipados Implementado sem um sistema geral de macros que geram código
Enums e aliases de tipo Implementado enums nominais sem payload; aliases apagados não genéricos
Genéricos explícitos Implementado funções, registros e uniões; sem inferência de argumentos de tipo
Exceções Não implementado traps do runtime não podem ser capturados em código Pop
Recurso Estado Limite
print(String) e print(Int) Implementado apenas saída com quebra de linha
APIs de coleções, texto, bytes, matemática e tempo da Pop.Standard Implementado namespaces tipados; consulte o mapa e o baseline
Rede e I/O explícito de host da Pop.Standard Implementado operações limitadas, handles, deadlines e cancelamento
Pop.Http Implementado Package HTTP/1.1 separado sobre o transporte Standard
Compilação e execução nativas com LLVM Implementado arquivos de versão para Linux
Transpilador C11 Limitado apenas o subconjunto sem runtime
Interpretador MIR Interno mecanismo de conformidade, sem comando público de CLI
Fluxos de projeto bubble.toml Implementado grafo local/bloqueado e comandos explícitos
Formatador, lint, documentação, test e benchmark Implementado comandos de manifesto e diagnósticos estruturados
Registro/publicação de pacotes Limitado artefatos locais/bloqueados; transporte de registro fica fora

Palavras reservadas e identidades internas de tipos não são promessas de funcionalidade no nível do código-fonte. Use os capítulos desta versão do livro e pop --help, e não nomes voltados ao futuro, como contrato de compatibilidade.