KabaLang örnekleri: konsol, masaüstü ve web için dokuz proje

Konsol: fraktal (paralel şeritli 24-bit Mandelbrot/Julia + yakınlaşma),
sudoku (geri izlemeli, canlı animasyon), fatura (JSON → terminal tablosu,
PDF ve Excel).
Masaüstü: hesap makinesi (işlem önceliği, canlı bağlama), odak (Pomodoro),
parola atölyesi (entropi ölçer, SHA-256).
Web: pano (Kanban REST API + SQLite), kisalt (302 yönlendirme, SVG
istatistik), anket (adres başına tek oy, sunucuda çizilen grafik).

Hepsi `kabalang calistir` ile derlenip çalışır; web uygulamaları yalnız
127.0.0.1'i dinler, SQL parametre bağlamalı, HTML çıktısı kaçırılır.
This commit is contained in:
2026-10-03 08:37:47 +03:00
commit e0e4a0d6c7
40 changed files with 2652 additions and 0 deletions
+25
View File
@@ -0,0 +1,25 @@
# Hesap Makinesi
İşlem önceliğini bilen, geçmişini tutan masaüstü hesap makinesi.
Hesaplama motoru dahil her satırı KabaLang.
![Hesap Makinesi](../../medya/hesap-makinesi.png)
```bash
kabalang calistir hesap-makinesi.kbl
```
## Neyi gösteriyor
| Özellik | Nerede |
|---|---|
| **İki yığınlı ifade değerlendirici**: `2+3×4` → `14` | `hesapla()` |
| `sayilabilir Islem` ile kapalı işlem kümesi | dosyanın başı |
| **Canlı bağlama**: `Ekran.metin = canli_sonuc(Ifade.metin)` | `etiket Ekran` |
| Hata yakalama: `1÷0` çökmez, ekranda `Tanımsız` yazar | `canli_sonuc()` |
| Türkçe sayı biçimi: `1.234.567,5` | `bicimle()`, `binlik()` |
| Geçmişten satır seçince sonucu yeniden kullanma | `liste Gecmis` → `secildiginde` |
| `izinler:` ile ağa çıkmadığını beyan etme (derleme anında denetlenir) | dosyanın başı |
Ekran hiçbir yerde elle güncellenmiyor. Tuşlar yalnız ifadeyi değiştiriyor,
ekran bağlı olduğu için kendini yeniliyor.