August 28, 2009

En baştan beri (ta size dersler, yazarken söylemiştim.) en uygun olanı wiki demiştim. esatarslan52 wikinin kontrolsüz gelişeceğini söylemiş. Açıkca birinin çocukca bir şeyler yapıp tüm sayfaları silmesinden bahsetmiş. Ama öyle bir şey olsa bu forumdaki üyelerin hemen hemen hepsi mod. Bir mod bütün konuyu silse ne olur. Wiki gibi geri gelir mi ? Pek sanmıyorum. Ama wikide böyle olanak var. Ve forumda da az kişi olduğumuz için hiç bir sorun yok. Hatta birimiz bir yazım hatası görsek hemen değiştir diyip düzeltiyoruz. Wiki içinde aynısını yapabiliriz. Ama esatarslan52 dediği gibi blog açılsada yada foruma ayrı bir kategori yine fark etmez. Ama blog açılırsa ben sadece bir kişinin önderliğinde gideceğini düşünüyorum. Siz ne düşünüyorsunuz ? Bu konu için ayrı bir ankette açılabilir.

Ama en önemlisi kaynağı olabildiğince hızlı yazmak. Bunun için ilk önce wiki'yi (Blogu) olabildiğince hızlı açmalıyız.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

August 28, 2009

Evet, std.random'ın rand_seed ve rand fonksiyonlarının C'ninkilerden yavaş olduklarını ve global değişkenler kullandıkları için yakında emekliye ayrılacaklarını söylüyorlar.

Bu arada, hani uniform'un aralıktakı ikinci değeri dahil etmediğini söylemiştim ya... Onu da kontrol edebiliyormuşuz! [1,6] aralığında sayı üretmek için:

       writeln(uniform!("[]")(1, 6));

       // veya daha kısa olarak:
       // uniform!"[]"(1, 6)

Ali

Not: Belki bilmeyenler vardır diye, matematikte aralık tanımlarken aralığın köşeli parantezli olan tarafı "dahil", normal parantezli olan tarafı "hariç" anlamındadır. Yani yukarıda '"(]"' kullanılsa, 1 dahil olmayacak ve 6 dahil olacak; '"()"' kullanılsa ikisi de dahil olmayacak...

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

August 28, 2009

rndGen() "tavsiye edilen" rassal sayı motorunu döndürüyormuş. Bu motorları biz popFront() ile çağırarak rastgele sayılar elde ediyormuşuz.

uniform eşit dağılımlı sayı istediğimizde kullanım kolaylığı sağlıyor, çünkü bu işi o yapıyor. rndGen()'in döndürdüğü Random nesnesini kendimiz kullansak hem daha çok iş yapacağız, hem de '(motor.popFront() % 6) + 1' gibi eşit dağılımlı olmayan ;) kodlar kullanacağız.

Bunun kısa açıklaması şu: popFront'un döndürdüğü değerler 6'ya tam bölünmüyorsa, bazı değerlerin çıkma şansı daha fazladır. O yüzden bu haksızlığa neden olan sayı geldiğinde onları atmak ve yeni değer seçmek gerekir. src/phobos/std/random.d dosyasındaki şu döngü eşit dağılımı sağlamak için bazı değerleri atıyor:

       NumberType r;
       do
       {
           r = cast(NumberType) ((urng.front - urng.min) / bucketSize);
           urng.popFront;
       }
       while (r > myRange);

Bu işi uzmanına bırakmak en iyisi. :)

Ayrıca daha yavaş olduğunu hiç sanmıyorum. Denemek gerek... Düzelteyim: aynı işi aynı doğrulukta elle yapmanın daha yavaş olduğunu sanmıyorum.

Öte yandan, Phobos 2 henüz gelişme aşamasında olduğu için zamanla doğal olarak daha hızlanacak...

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

August 28, 2009

canalpay, onun için en iyisi bir kütüphane başvuru bölümü olur... İngilizce sayfaların Türkçesi olarak... Kim yapacak? ;)

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

August 28, 2009

Öncelikle, saçma soru diye bir şey yoktur ve olamaz da zaten... :)

D biraz fazla güvenli kaçarak tamsayıdan kesirli sayıya otomatik dönüşüm sağlamıyor. Bunun açıkça yapılmasını istiyor.

pow'un yalnız kesirli sayılarla çalışmayı belirlemesini D şablonlarının türler üzerinde kısıtlama getirebilmesine borçluyuz:

pure nothrow F pow(F)(F x, uint n) if (isFloatingPoint!(F))

Tamsayılarda bu fonksiyona gerek mi yok acaba? Nasıl olsa bir döngüde çarparak mı hallederiz? Bu fonksiyonun şablon haline gelmesi şu bug ile gerçekleşmiş:

http://d.puremagic.com/issues/show_bug.cgi?id=2636

Orada en sonda gösterildiğine göre tamsayılarda bu iş daha etkin de yapılabilir.

math.d'nin içinde gördüğüm göre hiçbir şey yapamazlarsa C kütüphanesindeki 'powl' çağırıyorlar:

    return std.c.math.powl(x, y);

Onu biz de yapabiliriz demektir. Phobos'a zamanla eklenecek de olabilir...

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

August 28, 2009

quasimodo, 0 üzeri 0'ın sonucu yerine göre değişiyormuş. :) Şurada hikayesi var:

http://en.wikipedia.org/wiki/Exponent#Zero_to_the_zero_power

Bizim için önemli olan, IEEE bu sayıyı 1 olarak tanımlıyormuş. Yani bizim açımızdan doğru... :)

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

August 28, 2009

Josuttis'inki çok yararlı bir kitap, ama kitap... :) Bir de şöyle başvuru amaçlı siteler var:

http://www.sgi.com/tech/stl/table_of_contents.html

Benim için ikisinin yeri ayrı.

Bence bu iş wiki olmalı. Herkes öğrendikçe ekler. Peki sevilen Türkçe wiki nedir?

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

August 29, 2009

Benim blog dememdeki sebep yazılacak yazıların belli bir standart doğrultusunda olması içindi. Hem blog da hem de wiki de birden fazla yazar tanımlaya biliyosun. Ama Wikide bu sistem daha gelişmiş durumdaymış. O yüzden wiki tercihi daha doğru gibi.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

August 31, 2009

Alıntı (canalpay:1251495203):

>

Phobos kütüphanesinin kullanma kılavuzunu çevireceğiz. link http://www.digitalmars.com/d/2.0/phobos/phobos.html

Bu arada digitalmars'ın sitesinde bulunan ve solda menüde bulunan std isim alanındaki diğer modülleri çevirecekmiyiz? Örneğin std.algorithm (http://www.digitalmars.com/d/2.0/phobos/std_algorithm.html) gibi .. Çevirirsek nasıl bir sayfa düzeni yapacağız. Anladığım kadarıyla bunlar phobos kütüphanesinin içinde değil..

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 01, 2009

Alıntı (erdem):

>

Çevirirsek nasıl bir sayfa düzeni yapacağız.

Burada bahsettim. Link:http://ddili.org/wiki/index.php?title=Yaz%C4%B1_ekleme_%C3%B6l%C3%A7%C3%BCt%C3%BC#std.mod.C3.BCl_Mod.C3.BCl.C3.BC

Alıntı (acehreli):

>

Ben dizgiler dersini bitirmeden önce std.string'i çevirmek istedim ve başladım. Ama canalpay görmeden biraz toparlamam gerekiyor; şu anda çok dağınık... :)

Bana da biraz öyle geldi. Keşke daha basit modüllerden başlasaydınız. Ayrıca belgelerde örneğin invariant ifadesi geçiyor. Ben bile bazı şeyleri sözlüksüz anlayamayacağımı keşfettim. Ya onların Türkçe'sini kullanıp İngilizce'sini parantez içinde vereceğiz. Yada belge nasıl okunur adlı madde ekleyeceğiz ve orada anlamlarından bahsedeceğiz.. İkincisi ne olursa olsun yapılmalı.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]