Her şey bir scope.
GC yok · Borrow checker yok · Memory safe
Yazılımın en pahalı yarası bellek güvenliğidir — ciddi güvenlik
açıklarının yaklaşık %70'i bellek hatasıdır. Rust bu
yarayı kapatır, ama bedeli borrow checker'ın öğrenme duvarıdır.
MELP aynı yarayı o duvar olmadan kapatmayı hedefler:
programcı hiçbir şey işaretlemez — ne &,
ne lifetime, ne unsafe. Scope = ömür.
Kanıt durumu, dürüstçe: Mekanizma çalışıyor ve valgrind ile doğrulanmış durumda. Bu haftanın en ciddi iki hatası da tam bu sınıftandı — ikisi de test korpusumuz tarafından yakalanıp kapatıldı; bu hem yaranın ne kadar zor olduğunun hem de mekanizmanın onu gördüğünün kanıtı. Gerçek dünya ölçeğindeki kanıt sıradaki işimiz. Bugün hedefliyor diyoruz; kanıt tamamlandığında sağlıyor diyeceğiz.
MELP, birleşik bir Scope-Oriented Programming modeli önerir: scope; belleği, kaynakları, eşzamanlılığı, state'i ve arayüzü yöneten birincil yaşam süresi soyutlamasıdır.
Scope, yaşam süresinin evrensel birimidir.
Neden MELP?
Hız, güvenlik ve basitlik — üçü bir arada.
| Dil | Hız | Memory Safety | Basitlik |
|---|---|---|---|
| C / C++ | ✅ | ❌ | ❌ |
| Java / Python | ❌ (GC) | ✅ | ✅ |
| Rust | ✅ | ✅ | ❌ |
| MELP | ✅ | ✅ | ✅ |
"MELP, bellek güvenliğini scope modeliyle — ne GC ne de borrow checker gerektirmeden — kapatmayı hedefler."
Ne Çözdük, Neyi Henüz Çözmedik
Yazılımın kronik yaraları ve MELP'in bugünkü cevapları — eksikler dahil.
| Yara | MELP'in cevabı | Durum |
|---|---|---|
| Bellek güvenliği | Scope/custody: GC'siz, işaretsiz, otomatik | ✅ |
| Kurumsal hafıza kaybı | debug bloğu — geleceğe mektup, koşulunca durur |
✅ |
| Sessiz yanlış | Runtime'a tahmin bırakılmaz; hata kodları + çıkış disiplini | ✅ |
| State karmaşası | State'in ayrı hayatı yok — veri scope'unun ömrünü yaşar | 🔬 |
| Eşzamanlılık — veri yarışı inşa edilemez | Scope izolasyonu: yapısal olarak imkânsız, yalnızca önerilmemiş değil | ✅ |
| Eşzamanlılık — "bedava paralellik" | Tasarım niyeti, ölçülü olgu değil: meşru kapı yok, runtime tek akış | ⏸️ |
| Olay müdahalesi | freeze = doğal karantina + korunan deliller |
✅/🔬 |
| Tekrarlanabilirlik / bit rot | Self-hosting golden zinciri; her değişiklik kendini kanıtlar | ✅ |
| Tedarik zinciri — paket ekosistemi sınıfı (left-pad, log4shell) | Yapısal olarak yok: üçüncü taraf paket ekosistemi bulunmadığı için geçişli bağımlılık riski oluşamaz | ✅ |
| Tedarik zinciri — build zinciri sınıfı (xz) | Cevabımız yok — LLVM/clang, libgmp ve libc her binary'nin üstünde duruyor | ❌ |
| Tedarik zinciri — tohum (Trusting Trust) | Yolu çizili, yürünmedi: ürettiğimiz IR metindir, enjeksiyon orada görünmek zorunda | 🔬 |
| Araç zinciri konforu | Zayıf karnımız — editör, hata ayıklayıcı, paket araçları genç | ❌ |
✅ kanıtlı · 🔬 kısmî · ⏸️ tasarım niyeti · ❌ henüz yok —
kaynak: MELP_KANONİK/OZGUN_OZELLIKLER.md
MELP Ne Sunar?
debug — Geleceğe Mektup
Bugünün mimarı, yeni nesle koşan ve koşullu bir not bırakır.
Yorum satırı okunmayabilir; debug bloğu
KOŞAR — dünya varsayımı aştığı an program durur ve
mektubu okutur. Release'te sıfır maliyet.
Freeze — Dondur, Öldürme 🔬
Çalışan bir scope, alt ağacıyla birlikte dışarıdan dondurulabilir: durum tam korunur, kardeş scope'lar akmaya devam eder. Olay müdahalesinde "öldür ve delili kaybet" ikilemine dil düzeyinde karantina cevabı. Host API'den çalışır; dil sözdizimine tam entegrasyonu geliştirme aşamasında.
LLVM Native Binary
GC yok, overhead yok. MELP doğrudan LLVM IR üretir ve C ile aynı ligde koşar — sürprizsiz, ölçülebilir performans. Sözdizimsel bir deney değil, kendi kaynağını derleyen bir derleyici.
Kaynak: MELP_KANONİK/OZGUN_OZELLIKLER.md — ✅ çalışan, 🔬 kısmî, ❌ henüz yok (dürüstlük satırlarıyla)
Her Yapının Başı Kimlik Belgesi, Kapanışı İmzadır
Üç tip, sıfır bildirim töreni — bildirimin kendisi tiptir.
numeric function main()
println("Merhaba Dünya!")
return 0
end function
numeric function topla(numeric a; numeric b)
return a + b
end function
numeric function main()
numeric sonuc = topla(3; 5)
println(sonuc)
return 0
end function
debug
if uye_sayisi > 10000 then stop
-- Üye sayısı 10 bini geçince yeni bir
-- veritabanı mimarisi gerekebilir. — 2026
end debug
scope sayac
numeric n = 0
end scope
-- Argüman ayracı ';' — çünkü ','
-- ondalık ayracıdır:
numeric pi = 3,14
Ondalık virgül bir yerel ayar değil, birinci sınıf bir karardır —
argümanları ; ayırmasının sebebi budur.
Dil referansına bakın.
C Ligi, Sürprizsiz
19 Temmuz 2026 · MELP v1.0 · Intel Core i7-10750H · Linux x86-64
clang -O2)
derlenmesidir. Her ölçüm 5 tur, en iyi değer.
Çalışma süresi (ms) — düşük daha iyi
MELP ile C pratikte özdeştir (234 ≈ 232) — aynı LLVM backend'i kullanıldığında dil katmanı ölçülebilir bir kayıp getirmiyor.
Aynı karmaşıklık sınıfı — O(n). Sabit katsayıda C ve Rust önde (~9x).
Hazır mısınız?
Tarayıcıda hemen deneyin — kurulum gerekmez.