Skip to content

Releases: ahmeetdeeniz/soz-lang

Söz v0.2.0 Public Alpha

Choose a tag to compare

@ahmeetdeeniz ahmeetdeeniz released this 12 Jul 20:42

Soz v0.2.0 Public Alpha

Soz v0.2.0, küçük gerçek programlar yazmayı kolaylaştıran REPL, temel kütüphane, gelişmiş Türkçe hata mesajları, güvenli çalışma sınırları ve genişletilmiş VS Code desteğiyle ikinci genel kullanıma açık alpha sürümüdür.

Alpha uyarısı: Bu sürüm öğrenme, deneme ve geri bildirim içindir. Üretim kullanımı için kararlılık garantisi verilmez; sonraki alpha sürümlerinde söz dizimi veya çalışma zamanı davranışı değişebilir.

Öne çıkanlar

  • %, //, ** operatörleri; sağdan birleşimli üs ve negatif sayılarda tutarlı aşağı yuvarlama/kalan davranışı
  • İç içe hedefler dahil liste indeks ataması; paylaşımlı liste mutasyonu
  • kir, devam, özyinelemeli fonksiyonlar ve açık yerel kapsam davranışı
  • Test edilebilir standart girdi/çıktı katmanı ve girdi
  • Dönüşüm, tür, liste ve metin işlemleriyle toplam 18 yerleşik
  • Soz 0.2.0 başlangıç başlıklı, kalıcı ortamlı, çok satırlı ve hata sonrası devam eden REPL
  • Kaynak satırı ve işaretleme, değişken önerisi ve Soz çağrı izi içeren Türkçe hatalar
  • Çalışma adımı, UTF-8 çıktı ve fonksiyon çağrı derinliği sınırları
  • Statik tamamlama, yeni kod parçacıkları, güncel renklendirme ve güvenli Run komutlu VS Code uzantısı
  • Genişletilmiş Windows x64 paketleme, deterministik ZIP ve v0.1.0 → v0.2.0 yükseltme kabulü

v0.1.0 ile tam karşılaştırma için v0.1.0...v0.2.0 değişikliklerini inceleyebilirsiniz.

İndirme ve SHA-256

Windows kullanıcıları portable ZIP ile SHA256SUMS.txt dosyasını indirmelidir. VS Code uzantısını ayrıca kurmak isteyenler bağımsız VSIX dosyasını kullanabilir.

Yayın dosyası Boyut SHA-256 Açıklama
soz-0.2.0-windows-x64.zip 584.536 bayt 56d9c020872ee900d89f60bff5698491dbd780176fd0bff34d3d122919291ed9 Windows x64 portable paket
soz-language-support-0.2.0.vsix 12.164 bayt fd6d618dbd07bc18fb35bdbeb636f569f27a5fd75cda8cea21d9d2c417742938 Bağımsız VS Code uzantısı
SHA256SUMS.txt 315 bayt f0c7dbe732a4217d76212a4381c6233010c66add438d21eebeb9152c09c844e8 ZIP, VSIX ve soz.exe özetleri

ZIP içindeki soz.exe 1.477.839 bayttır; SHA-256 değeri 14a94b074208a2f92a1a5e5ab4ee8d50715fef1b22c6028aeaa4b3bf60ed3fa4 şeklindedir.

Bu sürüm 144 Rust testi, restricted-PATH portable testleri, iki ardışık deterministik paketleme ve gerçek v0.1.0 → v0.2.0 yükseltme senaryosuyla doğrulandı. soz.exe yalnızca Windows sistem DLL'lerini kullanır; ek bir çalışma zamanı DLL'i gerekmez.

Windows kurulumu

İndirdiğiniz ZIP ve SHA256SUMS.txt dosyasını aynı klasöre koyup doğrulayın:

Get-FileHash .\soz-0.2.0-windows-x64.zip -Algorithm SHA256
Get-Content .\SHA256SUMS.txt

Hesaplanan ZIP özeti yukarıdaki değerle ve SHA256SUMS.txt içeriğiyle birebir eşleşmiyorsa paketi çalıştırmayın.

ZIP'i açtıktan sonra portable kullanım:

Portable paket Rust, Cargo, Python, pip, Node.js veya internet bağlantısı gerektirmez.

.\soz.exe version
.\soz.exe .\examples\merhaba.soz
.\soz.exe

Kullanıcı bazlı kurulum:

powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1

Yeni terminalde soz version çıktısı soz 0.2.0 olmalıdır. Ayrıntılar Windows kurulum rehberinde bulunur.

v0.1.0'dan yükseltme

  1. v0.2.0 ZIP checksum'unu ayrıca doğrulayın.
  2. v0.2.0 paketindeki install.ps1 betiğini mevcut v0.1.0 hedefi için çalıştırın.
  3. Yeni terminal açın ve soz version ile 0.2.0 doğrulayın.

Yükseltme aynı kullanıcı PATH girdisini çoğaltmaz ve kurulum hedefindeki kullanıcı .soz dosyalarını korur. Bu davranış gerçek v0.1.0 paketiyle yükseltme, yeniden kurulum ve kaldırma senaryolarında doğrulanmıştır.

Uyumluluk notları

  • v0.1.0 programlarının temel söz dizimi korunur; yeni anahtar kelimeler kir ve devam olduğundan bu adları değişken veya fonksiyon adı olarak kullanan kaynaklar artık ayrıştırılamayabilir.
  • Liste değerleri v0.2.0'da paylaşımlı referans semantiğine sahiptir; aynı listeyi gösteren başka bir değişken üzerinden yapılan değişiklikler gözlemlenir.
  • Yeni varsayılan çalışma/çıktı/çağrı sınırları daha önce sınırsız çalışan veya aşırı çıktı üreten programları hata ile durdurabilir.
  • CLI'da argümansız kullanım artık REPL açar.
  • Hata metni ve biçimi kaynak satırı, işaretleme, yardım ve çağrı izi nedeniyle v0.1.0'dan daha ayrıntılıdır; metni birebir ayrıştıran araçlar çıkış kodu sözleşmesine geçmelidir.

CLI sözleşmesi

soz
soz <dosya.soz> [--max-steps <sayi>] [--max-output <sayi>]
soz run <dosya.soz> [--max-steps <sayi>] [--max-output <sayi>]
soz check <dosya.soz>
soz version
soz help

Çıkış kodları: başarı 0, Soz kaynak/söz dizimi/çalışma zamanı hatası 1, CLI kullanımı 2, dosya/G/Ç hatası 3.

VS Code

soz-language-support-0.2.0.vsix:

  • güncel söz dizimi renklendirmesi;
  • 16 anahtar kelime ve 18 yerleşik için statik tamamlama;
  • 10 kod parçacığı;
  • Soz: Dosyayi Calistir komutu sağlar.

VS Code'da Extensions → … → Install from VSIX... yolunu kullanabilir veya code komutu etkinse şu komutu çalıştırabilirsiniz:

code --install-extension .\soz-language-support-0.2.0.vsix --force

Run komutu için Soz CLI aynı yerel veya uzak ortamda PATH üzerinde olmalıdır. Uzantı dil sunucusu, hata ayıklayıcı, biçimlendirici veya interpreter içermez. Bu sürümde uzantı VSIX olarak sunulur; Marketplace yayını yoktur.

Güvenlik ve bilinen sınırlar

  • Windows çalıştırılabilir dosyası, PowerShell betikleri ve VSIX imzasızdır; SmartScreen veya kurumsal güvenlik yazılımı uyarı gösterebilir.
  • Hazır çalıştırılabilir dosya yalnız Windows x64 için sunulur.
  • Güvenlik limitleri işletim sistemi yalıtımı değildir; standart girdi beklemesine zaman aşımı veya genel bellek kotası sağlamaz.
  • Sınıf, modül/içe aktarma, paket yöneticisi, hata ayıklayıcı, dil sunucusu ve yerel derleyici yoktur.
  • Kod imzalama, Marketplace yayını ve otomatik güncelleme yoktur.

Geri bildirim ve bağlantılar

Hata bildirirken soz version çıktısını, küçük bir yeniden üretim örneğini, beklenen ve gerçek davranışı ekleyin. Issue içine token, parola, özel kaynak kod veya kişisel veri koymayın.

Söz v0.1.0 Public Alpha

Choose a tag to compare

@ahmeetdeeniz ahmeetdeeniz released this 12 Jul 09:05

Soz v0.1.0 Public Alpha

Soz'un ilk Public Alpha sürümü; Türkçe düşünmeye uygun ASCII anahtar kelimeler kullanan Rust tabanlı interpreter'ı, komut satırı aracını, Windows x64 portable paketini ve temel VS Code dil desteğini birlikte sunar.

Alpha uyarısı: Bu sürüm öğrenme, deneme ve geri bildirim içindir. Söz dizimi ve çalışma zamanı davranışı sonraki alpha sürümlerinde geriye dönük uyumsuz biçimde değişebilir. Üretim kullanımı için kararlılık garantisi verilmez.

Temel özellikler

  • Rust ile yazılmış lexer, parser, AST ve tree-walk interpreter
  • soz <dosya.soz>, soz run, soz check ve soz version CLI akışları
  • Sayı, string, boolean, boş değer, liste ve fonksiyon değerleri
  • Atama; aritmetik, karşılaştırma ve mantıksal operatörler
  • eger / yoksa / degilse koşulları
  • iken ve tekrar ... icinde ... döngüleri
  • islev / don ile kullanıcı tanımlı fonksiyonlar
  • yaz() ve aralik() yerleşik fonksiyonları
  • Türkçe, satır ve sütun bilgili hata mesajları
  • Örnek programlar, testler ve kullanıcı belgeleri
  • .soz dosya tanıma, syntax renklendirme, dil yapılandırması ve snippet sağlayan VS Code uzantısı

Release asset'leri ve SHA-256

Taslak GitHub Release'e aşağıdaki üç gerçek dosya yüklenmelidir. Adlar büyük/küçük harf dahil aynen korunmalıdır.

Asset adı Yerel frozen kaynak Boyut SHA-256
soz-0.1.0-windows-x64.zip dist/soz-0.1.0-windows-x64.zip 515.956 bayt 7109bfe83186f86bb96850dbd733c73f41c53209ea5b1cd6303302eed679ce0e
soz-language-support-0.1.0.vsix dist/soz-0.1.0-windows-x64/vscode/soz-language-support-0.1.0.vsix 5.679 bayt 20908d07754e9731188865a53c9d7449af6d77a776ac8b0862464f00403e8213
SHA256SUMS.txt dist/SHA256SUMS.txt 219 bayt Uygulanmaz; checksum manifesti kendisini listelemez.

SHA256SUMS.txt, frozen ZIP ile ZIP içindeki VSIX'in yukarıdaki iki gerçek özetini içerir. VSIX ayrıca ayrı release asset'i olarak yüklendiğinde dosyanın baytları ve SHA-256 değeri değişmemelidir.

Windows portable kullanım

  1. soz-0.1.0-windows-x64.zip ile SHA256SUMS.txt dosyalarını aynı klasöre indirin.

  2. PowerShell'de ZIP özetini doğrulayın:

    Get-FileHash .\soz-0.1.0-windows-x64.zip -Algorithm SHA256
    Get-Content .\SHA256SUMS.txt
  3. Değerler eşleşiyorsa ZIP'i çıkarın ve paket klasöründe çalıştırın:

    .\soz.exe version
    .\soz.exe .\examples\merhaba.soz
    .\soz.exe check .\examples\kosul.soz

Hazır paket son kullanıcı için Rust, Cargo, Python, pip, Node.js veya internet bağlantısı gerektirmez.

Kullanıcı hesabına kurulum

ZIP'ten çıkan klasörde:

powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1

Kurulum yalnızca mevcut kullanıcının PATH değerini günceller. Kurulum tamamlandıktan sonra yeni bir terminal açın:

soz version
soz main.soz

Kaldırma:

powershell -NoProfile -ExecutionPolicy Bypass -File .\uninstall.ps1

Özel bir -InstallDir kullandıysanız kaldırırken aynı yolu belirtin. Ayrıntılar Windows kurulum kılavuzunda bulunur.

VS Code uzantısını kurma

VSIX'i ayrı asset olarak indirdiyseniz VS Code'da Extensions görünümünün ... menüsünden Install from VSIX... seçeneğini kullanın. ZIP içindeki kopya vscode\soz-language-support-0.1.0.vsix yolundadır. code komutu etkinse:

code --install-extension .\vscode\soz-language-support-0.1.0.vsix --force

Uzantı yalnızca dil tanıma, syntax highlighting, dil yapılandırması ve snippet desteği verir; language server veya debugger içermez. Bu sürüm için VS Code Marketplace yayını yapılmamıştır.

Bilinen sınırlamalar ve güvenlik uyarısı

  • Resmi hazır paket yalnızca Windows x64 hedefidir.
  • soz.exe, install.ps1, uninstall.ps1 ve VSIX dijital olarak imzalanmamıştır.
  • Windows SmartScreen, PowerShell yürütme ilkesi veya kurumsal güvenlik yazılımı ilk çalıştırmada uyarı gösterebilir. Güvenlik politikasını genel olarak gevşetmeyin; önce checksum'u doğrulayın ve kurumsal ortamda sistem yöneticinizin politikasını izleyin.
  • Söz dizimi Public Alpha boyunca değişebilir; v0.1.0 programlarının sonraki alpha sürümlerinde değişmeden çalışacağı garanti edilmez.
  • Class, modül/import sistemi, paket yöneticisi, async/await, native compiler, debugger ve full Language Server yoktur.
  • Otomatik güncelleme, dosya ilişkilendirme, code signing ve Marketplace yayını yoktur.

Hata bildirme

Repo public olduktan sonra hataları GitHub Issues içindeki Bug report formuyla bildirin. Mümkünse soz version çıktısını, küçük bir yeniden üretim örneğini, beklenen ve gerçek davranışı ekleyin. Issue içine token, API anahtarı, parola, özel kaynak kod veya kişisel veri koymayın.

Kurulum ve dağıtım ayrıntıları için README, Windows dağıtım belgesi ve Public Alpha kabul belgesi kullanılmalıdır.