Files
ornekler/README.md
T

68 lines
3.0 KiB
Markdown
Raw Normal View History

# KabaLang Örnekleri
Türkçe sözdizimli, derlenen programlama dili **KabaLang** ile yazılmış dokuz
çalışan proje: terminalde, masaüstünde ve tarayıcıda. Her biri tek dosyadır ve
tek komutla derlenip çalışır.
```bash
kabalang calistir konsol/fraktal/fraktal.kbl
```
> KabaLang **önizleme 0.5** sürümündedir. Kılavuz, standart kütüphane ve kurulum:
> [dev.kabaforce.com/kabalang](https://dev.kabaforce.com/kabalang/)
![KabaLang Kcode içinde](medya/kcode.png)
---
## Konsol
| | Proje | Ne gösteriyor |
|---|---|---|
| ![](medya/fraktal.png) | [**Fraktal**](konsol/fraktal) | 24-bit renkli Mandelbrot ve Julia; `birlikte:` + `baslat` ile dört şerit **paralel** hesaplanır, `--yakinlas` ile 120 karelik dalış |
| ![](medya/sudoku.png) | [**Sudoku**](konsol/sudoku) | Geri izlemeli çözücü, adım adım canlı animasyon; `sinif` ve `sayilabilir` hücre durumu |
| ![](medya/fatura.png) | [**Fatura**](konsol/fatura) | JSON siparişten KDV'li fatura: kutu çizgili terminal tablosu, ardından **PDF ve Excel** çıktısı |
## Masaüstü
| | Proje | Ne gösteriyor |
|---|---|---|
| ![](medya/hesap-makinesi.png) | [**Hesap makinesi**](arayuz/hesap-makinesi) | İşlem önceliğini bilen hesap motoru; ekran **canlı bağlama** ile kendiliğinden güncellenir |
| ![](medya/odak.png) | [**Odak**](arayuz/odak) | Pomodoro zamanlayıcı: `zamanlayici` bloğu, ilerleme çubuğu, oturum kaydı, masaüstü bildirimi |
| ![](medya/parola-atolyesi.png) | [**Parola atölyesi**](arayuz/parola-atolyesi) | Parola üretici, entropi ölçer, SHA-256 özeti; sürgü ve girdi etiketlere canlı akar |
## Web
| | Proje | Ne gösteriyor |
|---|---|---|
| ![](medya/pano.png) | [**Pano**](web/pano) | Kanban panosu: JSON REST API (GET · POST · PUT · DELETE) + SQLite + tek sayfalık ön yüz |
| ![](medya/kisalt-istatistik.png) | [**Kısalt**](web/kisalt) | Bağlantı kısaltıcı: gerçek 302 yönlendirme, tıklama sayacı, sunucuda çizilen SVG grafik |
| ![](medya/anket.png) | [**Anket**](web/anket) | Canlı anket: adres başına tek oy, POST → 303 → GET, sonuç grafiği KabaLang'da üretilir |
Web uygulamaları yalnız `127.0.0.1`'i dinler. Kullanıcıdan gelen her değer
SQL'e **parametre olarak** bağlanır, HTML'e girerken `web.kacir` ile kaçırılır.
---
## Çalıştırmak
```bash
# Konsol
kabalang calistir konsol/fraktal/fraktal.kbl -- --yakinlas
kabalang calistir konsol/sudoku/sudoku.kbl
cd konsol/fatura && kabalang calistir fatura.kbl
# Masaüstü
kabalang calistir arayuz/hesap-makinesi/hesap-makinesi.kbl
kabalang calistir arayuz/odak/odak.kbl
kabalang calistir arayuz/parola-atolyesi/parola-atolyesi.kbl
# Web (her biri kendi klasöründen; tarayıcıda açın)
cd web/pano && kabalang calistir pano.kbl # http://127.0.0.1:8471
cd web/kisalt && kabalang calistir kisalt.kbl # http://127.0.0.1:8472
cd web/anket && kabalang calistir anket.kbl # http://127.0.0.1:8473
```
Yalnız derlemek için: `kabalang derle <dosya.kbl> -o <ikili>`.
Her projenin klasöründe ayrıntılı bir README vardır.