Mapa da API Standard
A API Standard da rc.6 é organizada por namespaces tipados. Um namespace é um proprietário em tempo de compilação; não é uma tabela em runtime.
Exemplos centrais
Seção intitulada “Exemplos centrais”using Pop.Sequenceusing Pop.Textusing Pop.Bytes
namespace StandardExample
function main() local words = split(trim(" Pop Lang "), " ") local upper = map<<String, List<String>, String>>(words, toAsciiUpper) local encoded = Text.encodeUtf8(join<<List<String>>(upper, "-")) local view = Bytes.view(encoded) print(Bytes.hexEncode(view))end| Namespace | Superfície principal da rc.6 |
|---|---|
Pop.Sequence |
map, filter, take, drop, concat, fold, scan; coleta, busca, agregação, ordenação e igualdade |
Pop.Text |
conversão ASCII, prefixo/sufixo/busca, trim, replace, split/join, parsing de inteiros, UTF-8 e views limitadas |
Pop.Unicode |
predicados de Rune validado e conversões ASCII |
Pop.Bytes |
views imutáveis, Bytes.Buffer, codificação, bits, comparação, busca e leituras/escritas endian |
Pop.Math |
limites inteiros, divisão/resto, potências, raízes, clamp, mínimo/máximo, sinais e teoria dos números |
Pop.Time |
Date, Instant, Duration, deadlines, date-times, offsets e relógios de teste/produção |
Pop.Net |
IPv4/IPv6, DNS, transportes TCP/UDP/Unix, resultados de transferência, deadlines, cancelamento e snapshots de rede |
Pop.File / Pop.Directory |
capacidades explícitas, handles, leitura/escrita limitada, texto, criação/remoção e snapshots |
Pop.Terminal / Pop.Process / Pop.Platform |
saída, flush, erros, argumentos, executável, sistema e arquitetura |
| Namespaces de valores | Pop.Csv, Pop.Guid, Pop.Locale, Pop.Mime, Pop.Path, Pop.Random, Pop.Uri, Pop.Version |
Bytes.Buffer é mutável e reutilizável. Bytes.toBytes cria um snapshot
imutável independente; não empresta uma view do armazenamento mutável. I/O de
arquivo e rede exige handles ou valores de transporte tipados e usa tamanhos
limitados. Ausência usa opcionais; falhas recuperáveis usam o resultado tipado
documentado por cada API.
Extensão HTTP
Seção intitulada “Extensão HTTP”HTTP/1.1 fica deliberadamente fora de Pop.Standard:
[dependencies]PopHttp = { path = "../../crates/extensions/http", version = "0.1.0", bubble = "Pop.Http" }Pop.Http possui Method, Header, Request e Response tipados, além de
parsing, formatação, envio, recebimento e troca com limites explícitos.
Fonte de verdade
Seção intitulada “Fonte de verdade”Este mapa é um guia. As raízes públicas e assinaturas exatas ficam em
libraries/standard/bootstrap/api-baseline.tsv; a implementação e a
documentação XML ficam em crates/libraries/standard/pop/src/. Os catálogos
da arquitetura definem famílias essenciais, standard, planejadas e limitadas.
