Perry ve alternatifleri

Perry, TypeScript göndermenin diğer yollarıyla nasıl karşılaştırılır: çalışma zamanları, derleyiciler ve çapraz platform UI framework'leri. Dürüst, kaynaklı ve mevcut olduğu yerde ölçülmüş sayılarla.

TypeScript çalışma zamanı

Perry vs Bun

Bun; çalışma zamanını kodunuzla birlikte paketleyerek tek dosyalı çalıştırılabilir dosyalar da üretebilen, hepsi-bir-arada bir JavaScript/TypeScript çalışma zamanı, bundler, paket yöneticisi ve test koşturucusudur. Perry farklı bir yol izler: TypeScript'i LLVM aracılığıyla doğrudan yerel makine koduna derler — ikili dosyada JavaScript motoru yok, çalışma zamanı yok, sadece küçük bir yerel çalıştırılabilir dosya. Bun ve Perry, TS'i ikili dosyaya çevirme noktasında örtüşür ama o ikili dosyada bir JavaScript motorunun olup olmaması konusunda anlaşamazlar.

TypeScript çalışma zamanı

Perry vs Deno

Deno; V8 üzerine inşa edilmiş, birinci sınıf TypeScript desteği, izin tabanlı bir güvenlik modeli ve V8'i uygulamanızla birlikte paketleyerek tek bir çalıştırılabilir dosya üreten bir `deno compile` komutu sunan modern bir JavaScript ve TypeScript çalışma zamanıdır. Perry, TypeScript'i doğrudan yerel makine koduna derler — çıktıda V8 yok, çalışma zamanı katmanı yok, sadece küçük bir yerel ikili dosya.

TS-yerel derleyici

Perry vs Static Hermes

Static Hermes (`shermes`), Meta'nın güçlü tipli bir JavaScript/TypeScript alt kümesini Hermes motoru üzerinden ahead-of-time derlemeyi amaçlayan, esas olarak React Native'i hedefleyen araştırma aşamasındaki çabasıdır. Perry, aynı genel fikre — TypeScript yerel koda derleniyor — yapılan farklı bir bahistir, ancak bağımsız olarak Rust üzerine LLVM ile inşa edilmiştir; bugün çalışan bir derleyici, 25+ yerel UI widget'ı ve 10 derleme hedefi göndermektedir. Nisan 2026 itibarıyla, Perry'nin kendi benchmark suite'i Static Hermes'in eş olarak denendiğini ve test ettiği standart paket yöneticileri aracılığıyla temiz bir şekilde kurulamadığını rapor etmektedir.

Çapraz platform UI

Perry vs Electron

Electron, Chromium ve Node.js'i uygulamanızla birlikte paketleyerek web teknolojileri (HTML/CSS/JS) ile çapraz platform masaüstü uygulamaları inşa etmenizi sağlar. Perry, TypeScript'i doğrudan yerel makine koduna derler ve UI'ı gerçek platform widget'ları aracılığıyla render eder — AppKit, UIKit, GTK4, Win32, JNI. Electron'un sunduğu, web teknolojisinin yeniden kullanımıdır; Perry'nin sunduğu ise TypeScript'ten küçük yerel ikili dosyalar ve yerel UI'dır.

Çapraz platform UI

Perry vs Tauri

Tauri; Rust backend ve işletim sisteminin yerleşik webview'i içinde çalışan bir frontend ile çapraz platform masaüstü (ve giderek mobil) uygulamalar inşa etmek için bir framework'tür — Windows'ta WebView2, macOS'ta WKWebView, Linux'ta WebKitGTK. Tauri uygulamaları, OS webview'i paketlenmediği için Electron'dan çarpıcı şekilde daha küçüktür. Perry farklı bir yol izler: hiç webview yok, HTML render yok, sadece gerçek platform widget'larını süren yerel makine koduna derlenmiş TypeScript.

Çapraz platform UI

Perry vs React Native

React Native; iOS ve Android'de yerel UI'ı süren JavaScript/TypeScript yazmanıza izin verir — UI bileşenleri bir JS-yerel köprü (veya Yeni Mimari'de aynı kavramsal şekle sahip bir JSI / Fabric katmanı) aracılığıyla platform widget'larına eşlenir. Perry farklı bir yaklaşım benimser: TypeScript ahead-of-time olarak yerel makine koduna derlenir ve yerel UI, çalıştırma zamanı köprüsü değil, derlenmiş ikili dosyanın bir parçasıdır.