David Nadlinger'ın saflık makalesini çevirdim:
http://ddili.org/makale/saflik.html
Ali
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]
Thread overview | ||||||||
---|---|---|---|---|---|---|---|---|
|
October 17, 2013 "D'nin Saflık Kavramı" makalesi | ||||
---|---|---|---|---|
| ||||
David Nadlinger'ın saflık makalesini çevirdim: http://ddili.org/makale/saflik.html Ali -- |
October 18, 2013 "D'nin Saflık Kavramı" makalesi | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli (acehreli) | Hocam eline sağlık; zor bir makale! Şöyle orijinalinin ilk paragrafına baktım da sürdürülebilirlik (maintainability)'den girmiş faydacı (pragmatic) anlayıştan çıkmış. Üstelik bu sadece başlangıcı, devamında neler var kim bilir demeyeceğim, sen bilirsin...:) Okumaya devam ediyorum ama 2-3 güne yayabilirim... -- |
October 18, 2013 "D'nin Saflık Kavramı" makalesi | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli (acehreli) | Aslında bu yazar için tebrik edilmesi gereken bir konu. Şöyle bir fotoğrafına baktım da yaşıtımız gibi duruyor; genç bir arkadaşmış. Halbu ki insan şöyle kelli felli biri bekliyor. O sözcük dağarcığı ile insan aya gider, ne bileyim kürsüsü olan profesör yaparlar yahu...:) Şaka bir yana makale güzel... Ancak ilk örnekte vurgulanmak istenen konuyu tam anlayamadım. Yoksa "++" işleçini değişkenden önce olacak şekilde yazdığımızda "pure" kavramı için işimize gelen bir kararlılık mı sağlıyor; dediğim gibi anlayabilmiş değilim? Makaledeki ilk örneği azıcık geliştirerek buraya taşıyayım:
Dikkat ederseniz (ben de yeni öğrendim), aslında D, kodu işlemeye sağdan başlıyor. Bunu 2. örnekte anlayabiliyoruz. Çünkü işaretlerin diziliş şekilleri bize bunu gösteriyor. Asıl meselemiz olan ilk örneğe gelince: Evet, bu şekilde 3/2 sonucunu elde diyoruz. Yani rs1'in işlem sonucunun değeri 2. Şaşırtıcı ama kaynak değerimiz 2 defa artmış ve 3 olmuş. Görünüşe göre sağdaki ilk işlevin oraya, "1++" kodunu kaynak ile ilişkili bir şekilde yerleştiriliyor; solunda ise onun işledikten sonra "2++" kodu yer alıyor... Böylece 3 yaşındaki çocuğun bile cevaplayabileceği, "2 x 1 işlemi kaç yavrum? 2 baba" oluyor...:) Ancak, "++" işleçini başa aldığımızda ise değerler önce 1 arttırılıp ondan sonra aralarında işlem yapıldığı için, sonuç 6 çıkıyor. Tıpkı ilk örnekte önceden "sonuna eklemeli" (cascading) bir şekilde karakterleri birleştirmem gibi. Peki bu anlattıklarım dışında "pure" kavramı ile ilgili ne anlamalıyız? Sevgiler, saygılar... -- |
October 18, 2013 "D'nin Saflık Kavramı" makalesi | ||||
---|---|---|---|---|
| ||||
Posted in reply to Salih Dinçer | Yazarına söylemeyin ama gerçekten çok ağır bir yazı olmuş. :) Cümleleri öyle uzun uzun bağlamak yerine temiz kısa cümleler çok daha etkili olurmuş. :-/ Bazı yerlerde aslına sağdık kalmamaya çalıştım ama Türkçesi yine de zor oldu. Buna rağmen, saflık konusu aslında çok basit bir kavram: pure olarak işaretlenmiş olan bir işlev evrensel verilere erişemiyor. Dolayısıyla, aynı işlevi aynı parametrelerle tekrar tekrar çağıracağımıza tek kere çağırıp onun sonucunu tekrar tekrar kullanabiliyoruz. Ek olarak, D'nin saflık kavramı parametrelerde değişiklik yapmaya da izin verecek derecede esnek. Daha da ek olarak, bir işlevin saf olup olmadığını derleyici çoğu durumda otomatik olarak anlıyor. Örneğin, şablonlarda ve temsilcilerde öyle. Ali -- |
October 19, 2013 "D'nin Saflık Kavramı" makalesi | ||||
---|---|---|---|---|
| ||||
Posted in reply to Salih Dinçer | Alıntı (Salih Dinçer): >yaşıtımız gibi duruyor; genç bir arkadaşmış. David, DConf 2013 sırasında şoförlüğünü yaptığım kişilerden birisi. Avusturyalı. Hatırladığıma göre İsviçre'deki iyi bir üniversitede okuyor. LDC'nin geliştiricisi ve sorumlusu. Alıntı: >ilk örnekte vurgulanmak istenen konuyu tam anlayamadım. Orada göstermek istediği tek şey, başka dillerdeki saflık kavramının yan etkilere kesinlikle izin vermemesi, D'nin ise parametrelerin değiştirilmesi izin vermesi. Alıntı: >Yoksa "++" işleçini değişkenden önce olacak şekilde yazdığımızda O karışıklık yaratan bir şey olmuş ama onunla ilgisi yok. Alıntı: >Makaledeki ilk örneği azıcık geliştirerek buraya taşıyayım: Senin örnekte hiç 'pure' yok ama. :) Alıntı: >Dikkat ederseniz (ben de yeni öğrendim), aslında D, kodu işlemeye sağdan başlıyor. O C ve C++'ta belirsizdir. D'de kesin olarak belirli olmasının istendiğini duymuştum ama bildiğim kadarıyla henüz doğru değil. Başka derleyicilerde farklı olabilir. Alıntı: >"pure" kavramı ile ilgili ne anlamalıyız?
Aslında o kadar. :) Ali -- |
November 12, 2013 "D'nin Saflık Kavramı" makalesi | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli (acehreli) | Şu konu ilgili: http://ddili.org/forum/thread/1295 Ali -- |