Tarih ve Zaman
Tarih ve Zaman
tarih, saat, tarihsaat, süre, bugün, şimdi.
tarih, saat, tarihsaat ve süre metin değildir. şimdi/bugün yerel duvar saatine dayanır; saat dilimi saklanmaz.
Referans
Bu sayfa 9 katalog öğesini kapsar. Aşağıdaki maddeler language-spec, örnekler ve katalog alanlarından üretilmiştir.
tarih
Nedir?
tarih bir takvim gününü tutar; metin değildir. bugün, konağın yerel duvar saatinden türetilir. Saat dilimi veya UTC ofseti saklanmaz.
Ne zaman kullanılır?
Yalnız gün (yıl-ay-gün) gerektiğinde kullanın.
Değerler, işlemler ve dönüşümler
Bildirim: g: tarih = bugün. Enterpolasyon: yyyy-MM-dd. Aynı tipte < <= > >= == != değer karşılaştırmasıdır. Nullable: tarih?.
Tanımlama
g: tarih = bugünsyaz "{g}"Örnek
g: tarih = bugünsyaz "ok"Çıktı
ok
Dikkat edilmesi gerekenler
- Saat dilimi/UTC ofseti saklanmaz (§22).
- Metin değildir; metin karşılaştırmasına çevrilmez.
- CLR karşılığı: System.DateOnly (runtime-design)
İlgili konular
saat
Nedir?
saat gün içi saati (saat-dakika-saniye) tutar; metin değildir. Takvim günü veya zaman dilimi taşımaz.
Ne zaman kullanılır?
Yalnız gün içi saat gerektiğinde kullanın.
Değerler, işlemler ve dönüşümler
Bildirim tipi saat. Kaynakta yaygın bir saat literali yoktur; değer JSON/konak metininden HH:mm:ss olarak okunabilir. Enterpolasyon: HH:mm:ss. Aynı tipte sıralama/eşitlik değer üzerindedir. Nullable: saat?.
Tanımlama
fonksiyon biçim(s: saat): metin{ => "{s}"}Örnek
fonksiyon biçim(s: saat): metin{ => "{s}"}syaz "saat tipi gün içi değer tutar"Çıktı
saat tipi gün içi değer tutar
Dikkat edilmesi gerekenler
- tarih/tarihsaat ile karıştırmayın; yalnız gün içi saattir.
- Yaygın kullanıcı kaynaklı saat literali language-spec'te yoktur; JSON/konak HH:mm:ss yolu vardır.
- CLR karşılığı: System.TimeOnly (runtime-design)
İlgili konular
tarihsaat
Nedir?
tarihsaat tarih ve saati birlikte tutan duvar saati değeridir. Saat dilimi ve UTC ofseti saklanmaz; Kind belirsizdir. şimdi konağın yerel duvar saatini verir.
Ne zaman kullanılır?
Olay zamanı veya süre ile kaydırma gerektiğinde kullanın.
Değerler, işlemler ve dönüşümler
Bildirim: bitiş: tarihsaat = şimdi + 30.dakika. İşlemler: tarihsaat ± süre → tarihsaat; tarihsaat - tarihsaat → süre. Enterpolasyon: yyyy-MM-dd HH:mm:ss. süre + tamsayı US0807. Nullable: tarihsaat?.
Tanımlama
bitiş: tarihsaat = şimdi + 30.dakikaÖrnek
bitiş: tarihsaat = şimdi + 30.dakikasyaz "ok"Çıktı
ok
Dikkat edilmesi gerekenler
- Duvar saati; TZ/UTC ofseti saklanmaz (§22).
- süre + tamsayı uyumsuzdur (US0807).
- CLR karşılığı: System.DateTime (runtime-design; Kind belirsiz)
İlgili konular
süre
Nedir?
süre bir zaman aralığıdır; bekle ve tarihsaat aritmetiği aynı değeri kullanır. Saklama işaretli 64 bit milisaniyedir (TimeSpan tipi değildir). Negatif süre çıkarma ile elde edilir; eksi işaretli süre literali yoktur.
Ne zaman kullanılır?
Gecikme veya tarihsaat kaydırma gerektiğinde kullanın.
Değerler, işlemler ve dönüşümler
Literal birimleri: N.milisaniye, N.saniye, N.dakika, N.saat, N.gün, N.hafta. süre ± süre → süre; tarihsaat ± süre → tarihsaat. bekle süre alırsa değer döndürmez. Taşma US1523. Nullable: süre?.
Tanımlama
bekle 2.saniyeÖrnek
afonksiyon bekleVeYaz(){ bekle 100.milisaniye syaz "Tamam"} bekle bekleVeYaz()Çıktı
Tamam
Dikkat edilmesi gerekenler
- CLR karşılığı TimeSpan değil; işaretli 64 bit milisaniyedir (System.Int64, runtime-design).
- Taşma US1523.
- Enterpolasyon: milisaniye sayısı + " ms".
İlgili konular
bugün
Nedir?
bugün konağın yerel duvar saatinden türetilen tarih değeridir. Saat dilimi veya UTC ofseti saklanmaz.
Ne zaman kullanılır?
Takvim gününü okumak; tarih tipiyle çalışmak.
Parametreler ve dönüş
Üst düzey değişken gibi okunur: g: tarih = bugün. Dönüş tarih. TZ/UTC iddiası yoktur; Kind saklanmaz. Test saati sabitlenebilir.
Kullanım
g: tarih = bugünsyaz "{g}"Basit örnek
g: tarih = bugünsyaz "ok"Çıktı
ok
Dikkat edilmesi gerekenler
- Yerel duvar tarihi; UTC dönüşümü dil sözleşmesi değildir.
- Enterpolasyon biçimi
yyyy-MM-dd. - Derleyici SUPPORTED.
İlgili konular
şimdi
Nedir?
şimdi konağın yerel duvar tarihsaat değeridir. Saat dilimi ve UTC ofseti saklanmaz; Kind belirsizdir.
Ne zaman kullanılır?
Anlık duvar saati veya tarihsaat ± süre aritmetiği için.
Parametreler ve dönüş
Üst düzey okuma: bitiş: tarihsaat = şimdi + 30.dakika. Dönüş tarihsaat. UTC iddiası yok. Taşma aritmetiğinde US1523.
Kullanım
bitiş: tarihsaat = şimdi + 30.dakikaBasit örnek
bitiş: tarihsaat = şimdi + 30.dakikasyaz "ok"Çıktı
ok
Dikkat edilmesi gerekenler
- Duvar saati; TZ/UTC ofseti saklanmaz.
- Enterpolasyon:
yyyy-MM-dd HH:mm:ss. - Derleyici SUPPORTED.
İlgili konular
Zaman tipleri
Nedir?
Dört tip metin değildir. tarihsaat duvar saatidir; TZ/UTC ofset saklanmaz. şimdi yerel duvar saati; bugün onun tarihidir (konak; testte sabitlenebilir).
Sözdizimi
g: tarih = bugüns: süre = 30.dakikaBasit örnek
syaz "{bugün}"syaz "{şimdi + 30.dakika}"Çıktı
2026-10-07 2026-10-07 00:30:00
Dikkat edilmesi gerekenler
süre + tamsayıUS0807.
Süre aritmetiği
Nedir?
tarihsaat ± süre → tarihsaat; tarihsaat - tarihsaat → süre; süre ± süre → süre. Taşma US1523. Negatif süre çıkarma ile; eksi literal yok.
Basit örnek
toplam: süre = 30.dakika + 30.dakikasyaz "{toplam}"Çıktı
3600000 ms
Dikkat edilmesi gerekenler
süre + tamsayıUS0807.
'tarih' / 'saat' literal derinliği
Nedir?
§2.3’te tarih/saat/tarihsaat için özel literal biçimi yoktur; süre literali (5.saniye) vardır. Zaman değerleri bugün/şimdi ve aritmetikle üretilir. Lexer’da Date/Time literal bulunamadı.
Basit örnek
syaz "{bugün}"Çıktı
2026-10-07
Dikkat edilmesi gerekenler
- Enterpolasyon biçimleri §22’de kültürden bağımsız sabittir.
- Skaler sayı/metin literalleri ayrı özelliklerdir.