<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Perry Blog</title>
    <link>https://www.perryts.com/pt/blog/</link>
    <description>Notas de versão, tutoriais e artigos técnicos do Perry, com data. As medições históricas ficam ligadas à versão original.</description>
    <language>pt</language>
    <item>
      <title>Compiling JavaScript AOT is complicated, here is why</title>
      <link>https://www.perryts.com/pt/blog/compiling-javascript-aot/</link>
      <guid>https://www.perryts.com/pt/blog/compiling-javascript-aot/</guid>
      <pubDate>Fri, 30 Oct 2026 00:00:00 GMT</pubDate>
      <description>An ahead-of-time compiler has to know, before the program runs, whether item.price is one load or a full lookup. How Perry proves whole-program facts about your JavaScript, the design that hit a wall, the per-unit design that replaced it, what failed, and where it stands.</description>
    </item>
    <item>
      <title>Construindo um GC para um compilador TypeScript nativo: decisões, surpresas e o estado atual</title>
      <link>https://www.perryts.com/pt/blog/gc-decisions-surprises/</link>
      <guid>https://www.perryts.com/pt/blog/gc-decisions-surprises/</guid>
      <pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate>
      <description>Perry compila TypeScript para código nativo com LLVM — portanto, precisa de um coletor de lixo de verdade. As decisões que tomamos, os bugs que não deixavam evidências, os gates de CI que não podiam falhar e a situação dos números diante do Node e de um concorrente AOT com contagem de referências.</description>
    </item>
    <item>
      <title>Compilar o Claude Code: um bundle minificado, 160 correções no compilador</title>
      <link>https://www.perryts.com/pt/blog/compiling-claude-code/</link>
      <guid>https://www.perryts.com/pt/blog/compiling-claude-code/</guid>
      <pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate>
      <description>Tentámos transformar num binário nativo o ficheiro cli.js minificado de 13 MB que o npm distribui para o Claude Code. Um mês depois, inicia, autentica-se, recebe respostas reais da API em streaming e apresenta os caracteres digitados. Pelo caminho, 160 pull requests foram integrados no Perry: de um MessageChannel que não fazia nada a uma barreira de escrita do GC em falta nos cabeçalhos RegExp.</description>
    </item>
    <item>
      <title>Publicar uma app exclusiva do Apple Watch na App Store quando todos os outros métodos falham</title>
      <link>https://www.perryts.com/pt/blog/shipping-a-watch-only-app-to-the-app-store/</link>
      <guid>https://www.perryts.com/pt/blog/shipping-a-watch-only-app-to-the-app-store/</guid>
      <pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate>
      <description>Todos os métodos documentados para enviar uma app watchOS autónoma para a App Store falham: altool, iTMSTransporter, xcodebuild e até o Organizer do Xcode 26 rejeitam a plataforma. Esta solução não documentada funciona e preserva arm64_32 para relógios mais antigos: um stub iOS marcado como ITSWatchOnlyContainer, enviado com iTMSTransporter.</description>
    </item>
    <item>
      <title>Pacotes npm reais agora compilam: axios, zod, express — e uma varredura de conformidade</title>
      <link>https://www.perryts.com/pt/blog/real-npm-packages-and-a-conformance-sweep/</link>
      <guid>https://www.perryts.com/pt/blog/real-npm-packages-and-a-conformance-sweep/</guid>
      <pubDate>Tue, 09 Jun 2026 00:00:00 GMT</pubDate>
      <description>As ~270 releases de v0.5.875 a v0.5.1146 não eram sobre um benchmark — eram sobre fazer pacotes npm reais compilarem e rodarem. axios, zod v4, express, fastify e hono agora funcionam; a paridade test262 saltou (String 60→79%, Array 61→72%); o Windows ficou Fluent com Mica; e DatePicker + drag &amp; drop chegaram em toda plataforma.</description>
    </item>
    <item>
      <title>O que o benchmark de aya_koto nos ensinou sobre o GC do Perry</title>
      <link>https://www.perryts.com/pt/blog/closing-the-gc-gap/</link>
      <guid>https://www.perryts.com/pt/blog/closing-the-gc-gap/</guid>
      <pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate>
      <description>Um leitor benchmarkeou o Perry no AtCoder ABC451D e o mediu 3,85× mais lento que o Bun. Uma regressão silenciosa tinha ampliado o gap para 6,59× desde então. O fix não estava onde esperávamos, o trade-off deliberado do GC que ele expôs era real, e o Perry v0.5.875 agora empata com o Bun no mesmo bench: 425 ms vs 431 ms.</description>
    </item>
    <item>
      <title>Auto-Update, um Inspector ao Vivo e o Compilador que se Cortou pela Metade</title>
      <link>https://www.perryts.com/pt/blog/updater-live-inspector-and-compiler-refactor/</link>
      <guid>https://www.perryts.com/pt/blog/updater-live-inspector-and-compiler-refactor/</guid>
      <pubDate>Tue, 28 Apr 2026 00:00:00 GMT</pubDate>
      <description>Perry v0.5.306 → v0.5.359 em quatro dias — 53 patch releases, ~30 issues fechadas e três coisas grandes aterrissaram: perry/updater para auto-update desktop, um inspector ao vivo em localhost:7676 e um refactor do compilador que encolheu os quatro maiores arquivos em 33–91%.</description>
    </item>
    <item>
      <title>GC geracional, JSON preguiçoso e benchmarks que aguentam escrutínio</title>
      <link>https://www.perryts.com/pt/blog/gen-gc-lazy-json-and-defensible-benchmarks/</link>
      <guid>https://www.perryts.com/pt/blog/gen-gc-lazy-json-and-defensible-benchmarks/</guid>
      <pubDate>Sun, 26 Apr 2026 00:00:00 GMT</pubDate>
      <description>Perry v0.5.174 → v0.5.306 em três dias, mais o trabalho de GC e JSON que aterrou em paralelo. O GC geracional vira o padrão. A Small String Optimization vira o padrão. A pipeline de JSON ganha uma tape preguiçosa que aterra em 75 ms de mediana em validate-and-roundtrip — a melhor do pelotão de tipagem dinâmica. A página de benchmarks foi reescrita com mediana RUNS=11 + p95 + σ, simdjson e AssemblyScript+json-as adicionados como pares, e cada fraqueza do Perry exposta com honestidade.</description>
    </item>
    <item>
      <title>Distribuição npm, perry dev e vencer todos os benchmarks</title>
      <link>https://www.perryts.com/pt/blog/npm-perry-dev-and-beating-bun/</link>
      <guid>https://www.perryts.com/pt/blog/npm-perry-dev-and-beating-bun/</guid>
      <pubDate>Thu, 23 Apr 2026 00:00:00 GMT</pubDate>
      <description>Perry v0.5.80 → v0.5.174 em seis dias. @perryts/perry é publicado no npm para todas as sete plataformas suportadas. perry dev adiciona auto-recompilação em modo watch sobre uma cache de AST em memória e uma cache de objetos por módulo em disco. json_roundtrip fecha a sua última lacuna — o Perry agora vence todos os benchmarks contra o Node.js e o Bun.</description>
    </item>
    <item>
      <title>Otimizando tudo: uma semana, 68 lançamentos e uma aceleração JSON de 547x</title>
      <link>https://www.perryts.com/pt/blog/optimizing-everything/</link>
      <guid>https://www.perryts.com/pt/blog/optimizing-everything/</guid>
      <pubDate>Fri, 17 Apr 2026 00:00:00 GMT</pubDate>
      <description>Perry v0.5.13 → v0.5.80 em sete dias. JSON.parse fecha uma lacuna de 547x em relação ao Node. mimalloc chega como alocador global. Inline caches, transições de shape, slots de Buffer tipados, operações bitwise nativas em i32, scalar replacement e um event loop nativo que mantém servidores Fastify e WebSocket vivos.</description>
    </item>
    <item>
      <title>De Cranelift para LLVM: o que quebrou e como consertamos</title>
      <link>https://www.perryts.com/pt/blog/cranelift-to-llvm/</link>
      <guid>https://www.perryts.com/pt/blog/cranelift-to-llvm/</guid>
      <pubDate>Sun, 12 Apr 2026 00:00:00 GMT</pubDate>
      <description>A migração do backend do Perry de Cranelift para LLVM está concluída. A transição inicial tornou os benchmarks 70x mais lentos — isto é o que quebrou, e as seis otimizações direcionadas que consertaram.</description>
    </item>
    <item>
      <title>tvOS, Compilação Cruzada de iOS a Partir do Linux e Perry Login</title>
      <link>https://www.perryts.com/pt/blog/tvos-cross-compile-and-perry-login/</link>
      <guid>https://www.perryts.com/pt/blog/tvos-cross-compile-and-perry-login/</guid>
      <pubDate>Sat, 28 Mar 2026 00:00:00 GMT</pubDate>
      <description>Perry v0.4.24: tvOS como 10º alvo de compilação, compilação cruzada de iOS e macOS a partir do Linux via ld64.lld, perry login com cobrança baseada em uso, reformulação da UI do Windows, notarização no macOS e 120 commits em 5 dias.</description>
    </item>
    <item>
      <title>Multi-Threading Real, i18n em Tempo de Compilação e watchOS</title>
      <link>https://www.perryts.com/pt/blog/true-multithreading-i18n-and-watchos/</link>
      <guid>https://www.perryts.com/pt/blog/true-multithreading-i18n-and-watchos/</guid>
      <pubDate>Mon, 23 Mar 2026 00:00:00 GMT</pubDate>
      <description>Perry v0.4.0: threads reais do SO com segurança em tempo de compilação, um sistema de internacionalização sem cerimônia para mais de 30 idiomas, watchOS como 9º alvo de compilação, APIs de áudio e câmera e um pipeline de compilação paralelo.</description>
    </item>
    <item>
      <title>Compilação Cruzada para Windows, Game Loops no iOS e 100% de Paridade de Testes</title>
      <link>https://www.perryts.com/pt/blog/cross-compile-windows-game-loops-and-parity/</link>
      <guid>https://www.perryts.com/pt/blog/cross-compile-windows-game-loops-and-parity/</guid>
      <pubDate>Fri, 20 Mar 2026 00:00:00 GMT</pubDate>
      <description>103 commits em uma semana: compilação cruzada para Windows a partir do Linux via lld-link, suporte a game loop no iOS, relatório de crashes, pipeline de build Hub em dois estágios e o compilador auto-hospedado atinge paridade determinística de 68/68 testes.</description>
    </item>
    <item>
      <title>O Pipeline Completo: Documentação, Distribuição e WidgetKit</title>
      <link>https://www.perryts.com/pt/blog/the-full-pipeline/</link>
      <guid>https://www.perryts.com/pt/blog/the-full-pipeline/</guid>
      <pubDate>Fri, 13 Mar 2026 00:00:00 GMT</pubDate>
      <description>82 commits em uma semana: um site de documentação de 49 páginas, publicação automatizada na App Store e Play Store, pacotes Homebrew e APT, extensões WidgetKit nativas a partir de TypeScript, novos widgets, módulos http/https e um compilador LLVM auto-hospedado.</description>
    </item>
    <item>
      <title>De Compilador a Ecossistema: React, Bancos de Dados e Builds na Nuvem</title>
      <link>https://www.perryts.com/pt/blog/from-compiler-to-ecosystem/</link>
      <guid>https://www.perryts.com/pt/blog/from-compiler-to-ecosystem/</guid>
      <pubDate>Fri, 06 Mar 2026 00:00:00 GMT</pubDate>
      <description>Perry cresce de um compilador para um ecossistema completo. perry/ui no centro, ORMs compatíveis com Prisma para MySQL/PostgreSQL/SQLite, notificações push universais, builds distribuídos com publicação na App Store e uma camada de compatibilidade React — tudo em uma semana.</description>
    </item>
    <item>
      <title>Todas as Seis Plataformas, Paridade Total de Funcionalidades</title>
      <link>https://www.perryts.com/pt/blog/all-six-platforms-ui-parity/</link>
      <guid>https://www.perryts.com/pt/blog/all-six-platforms-ui-parity/</guid>
      <pubDate>Sat, 28 Feb 2026 00:00:00 GMT</pubDate>
      <description>Mais de 20 widgets UI nativos, widget Canvas, Table views, notificações do sistema, acesso ao keychain, suporte a múltiplas janelas e paridade total de funcionalidades em macOS, iOS, iPadOS, Android, Linux e Windows — tudo a partir de um único código TypeScript.</description>
    </item>
    <item>
      <title>Sistemas de Plugins São um Imposto sobre o Desempenho</title>
      <link>https://www.perryts.com/pt/blog/plugin-systems-are-a-performance-tax/</link>
      <guid>https://www.perryts.com/pt/blog/plugin-systems-are-a-performance-tax/</guid>
      <pubDate>Fri, 27 Feb 2026 00:00:00 GMT</pubDate>
      <description>Arquiteturas de plugins trocam desempenho por extensibilidade. Mas e se a extensibilidade acontecesse em tempo de compilação em vez de runtime? Composição em tempo de compilação oferece ambos — zero overhead, flexibilidade total.</description>
    </item>
    <item>
      <title>Compilando Hono, tRPC e Strapi para Binários Nativos</title>
      <link>https://www.perryts.com/pt/blog/compiling-hono-trpc-strapi/</link>
      <guid>https://www.perryts.com/pt/blog/compiling-hono-trpc-strapi/</guid>
      <pubDate>Wed, 25 Feb 2026 00:00:00 GMT</pubDate>
      <description>Perry agora compila três grandes frameworks TypeScript — Hono, tRPC e Strapi — para executáveis ARM64 nativos. Compilam em menos de um segundo, produzem binários com menos de 2 MB e rodam sem crashes.</description>
    </item>
    <item>
      <title>Construindo o Pry: Um Visualizador JSON Nativo em TypeScript</title>
      <link>https://www.perryts.com/pt/blog/building-pry/</link>
      <guid>https://www.perryts.com/pt/blog/building-pry/</guid>
      <pubDate>Thu, 20 Feb 2025 00:00:00 GMT</pubDate>
      <description>Um passo a passo da construção do Pry, um visualizador JSON nativo compilado do TypeScript para código de máquina com o tempo de execução Perry e GC vinculado e sem webview.</description>
    </item>
    <item>
      <title>UI Nativa Multiplataforma a Partir de TypeScript</title>
      <link>https://www.perryts.com/pt/blog/cross-platform-native-ui/</link>
      <guid>https://www.perryts.com/pt/blog/cross-platform-native-ui/</guid>
      <pubDate>Sat, 01 Feb 2025 00:00:00 GMT</pubDate>
      <description>Como Perry mapeia uma base de código TypeScript para widgets de plataforma em seus destinos documentados, incluindo as limitações e pré-requisitos específicos da plataforma.</description>
    </item>
    <item>
      <title>Apresentando o Perry</title>
      <link>https://www.perryts.com/pt/blog/introducing-perry/</link>
      <guid>https://www.perryts.com/pt/blog/introducing-perry/</guid>
      <pubDate>Wed, 15 Jan 2025 00:00:00 GMT</pubDate>
      <description>Perry compila TypeScript compatível para executáveis nativos independentes com seu tempo de execução e GC vinculados, sem exigir um Node.js ou mecanismo JavaScript.</description>
    </item>
  </channel>
</rss>
