Neden D?

0
FZ
C++'nın en büyük ustalarından olan Andrei Alexandrescu, şimdilerde enerjisini Walter Bright tarafından tasarlanmış olan D programlama dilini geliştirmeye harcıyor. Alexandrescu, çeşitli nedenlerle C++'ya eklenemeyen çoğu dil olanağının D'ye eklenmesine yardım ederek, bir anlamda D'yi C++'nın olmayı başaramadığı dil haline getiriyor.

Kendisine özgü heyecanlı tarzını içeren bu yazısında Alexandrescu, D dilinin neden önemli olduğunu ve belki de sizin için de uygun bir dil olabileceğini göstermeye çalışıyor.
Bu yazının İngilizce aslı ilk olarak ACCU'nun yayın organlarından CVu'nun Mayıs 2009 sayısında yayınlanmıştır. Bütün hakları yazarı Andrei Alexandrescu'ya aittir. Aynı yazı, bu çevirinin yapıldığı tarihten kısa bir süre sonra Doctor Dobbs Journal'ın sitesinde de yayınlanacaktır.

Devamı: http://www.ceviz.net/c-c/neden-d_a1290.html

Görüşler

0
Dite
Kısacası D ile daha az esnek, daha rahatsız ve daha "anormal" günler sizleri bekliyor :). Benim gördüğüm tek şey şu ilk kez kod yazacak insanlar rahat edecektir çünkü çoğu 100 satırda C++ ile kendi garba collectorlarını yazabileceklerinden bile habersiz olduklarından (ki ben burada nasıl yazılacağını göstermiştim) kullandıkları dilin "sihirli" bir şekilde işleri yapması hoşlarına gidebilir.

Böyle diller tıpkı isveç çakıları gibidirler. Üzlerinde pek çok alet vardır ama aslında hiç biri gerçekten işe yaramaz ve marangozlarda o yüzden çakılardaki testereyi kullanmaz :D :D
0
Tarık
Dillerin gelişimi ve tasarlanmaları, her insanın kavramlara farklı baktığı düşünüldüğünde aslında oldukça doğal bir süreç.

Her biri onlarca ayrı uzmanlık seviyesinde milyon çeşit programcı var. Kimileri yorumlayıcılar için betik yazıyor, kimileri sistem programlıyor vs.

Kimileri kullanıcı etkileşimi, rdbms, platform bağımsızlığı vs. için en yüksek noktalarda aşağılardan habersiz gezinirken, kimileri bilmemne donanımı için donanım yazılım arasında akrobasi yapıyor. Herkesin ihtiyaçlarına göre ayrı ayrı tasarlanmış tonla dil mevcut. VB gibi sadece piyasa koparmak için geliştirilmiş, güya iş kolaylaştırıcı dilleri saymazsak yüzlerce emeğin hakkını verek anlamlı dil dünyanın her köşesinde çayır çayır kullanılmakta.

Elbetteki D dilide geliştirilecektir. Hatta tarihte geriye doğru atıf yapmayı seven topluluklar, dil tasarımcıları için isimlendirme işi Z' ye kadar bile gider.

Tüm programcıların sayı sistemlerini, hafıza yönetimini, donanım mimarilerini, bitsel işlemleri, pointer aritmetiğini biliyor olabilmesi mümkün değil. Ve bilmiyorlar diye yerilmeleride normal olmaz. Piyasanın buna ihtiyacıda yok. Kararlı durumda çalışan onlarca hazır araç gereç var, adam neden varolan dururken yenisini yaratmaya zaman harcasın? Bu araçlar şimdi sistemi kasıyor olsa bile 4-5 sene sonra donanım gelişim ivmesine bağlı olarak artık kasıntıyı hissettirmeyecek derecede gelişip hızlanacaklar.

Ha bu arada birileri yine assembly kasacak, kendi çöp toplayıcısını, bellek yöneticisini, editörünü yazacak orası ayrı. Ama doğal olarak dillerin kendi içinde çatallaşarak çoğalması devam edecek. Etsinde zaten. Neticede mükemmel dil hiçbir zaman mevcut olamayacak. Zira beklentiler ve amaçlar giderek karmaşıklaşıyor. Bir zaman sonra en yüksek ile en aşağı seviye arasında tek kişinin aşamayacağı bir karmaşıklık uçurumu ortaya çıkacak. Doğal olanda budur zaten.

Bir zamanlar nasıl bir zihniyet ise bilmiyorum, java ve türdaşlarına sıcak bakmazdım, bir süre sonra ne gereksiz bir düşünce içerisinde olduğumu hissettim(sanırım o zamanlar, gereksiz dil kavgalarının çokça yaşandığı dünlerdi.). Zira javanın varlığı ya da yokluğu benim için ne önem arzeder ki? Ben kullanmak istediğim süpersonik aşağı seviye hacker araçlarına her daim özgürce ulaşabildikten sonra.

saygılar.
0
Dite
Tabii ki haklısınız örneğin build script'lerini perl ile yazabileceken neden gidip C++ ile yazayım ? Fakat genelde hep java yada diğer benzeri dilleri kullanların savunması budur:

"Bu araçlar şimdi sistemi kasıyor olsa bile 4-5 sene sonra donanım gelişim ivmesine bağlı olarak artık kasıntıyı hissettirmeyecek derecede gelişip hızlanacaklar."

Bu pek doğru değil. Neden ? Çünkü 4-5 sene sonra sistemlerin hızlanması ile beraber ihtiyaçlarda bir o kadar artacak daha komplex multimedia uygulamarı çıkacak bu durumda gene java kullananlar "4-5 sene sonra" diyecekler, 4-5 geçtiğinde ise gene bu durum tekrarlanacak "4-5 sene sonra..." :D :D :D
0
St
Uzun bir süredir Java ile uğraşmadığınızı zannediyorum :)

Zira yazılımcıların kendilerinden kaynaklanabilecek hataları (örneğin: memory management) en az indirip işlerine güçlerine bakabildikleri, ve yığınla iş için çok kapsamlı ve sağlam kütüphanelere sahip olan Java, kendine ihtiyaç duyulan noktada en iyi performansla çalışmaya devam ederken, azıcık daha fazla hafıza ve azıcık daha fazla işlem gücü harcamak karşılığında şirketlere on binlerce insan*saat kazandırıyor.

Tarık'ın yorumuna sonuna kadar katılıyorum. Sizin beklentilerinizi, ihtiyaçlarınızı karşılıyorsa kullandığınızı dilden zevk almaya devam edin. Kısır tartışmalarla zaman harcayacağımıza sahip olduklarımızı geliştirmeye bakalım.
0
mustafa_
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Böyle bir sunum izlemediniz: gapminder ve dünyanın gidişatı

FZ

Bir sunum bu kadar mı çarpıcı olur, bunca bilgi bu kadar mı net, güzel ve etkili şekilde iki boyutlu ekrana sığdırılır. Görsellik ve animasyon bu kadar mı güzel kullanılır. İstatistik ve geleceğe yönelik bakış açısı bu kadar mı eğlenceli ortaya konur!

Oyun Oynamayı Öğrenen Sistem: CogVis

FZ

Yorkshire, İngiltere'deki University of Leeds araştırmacıları tarafından geliştirilen CogVis sistemi "kağıt, makas, taş" oyununu sadece gözlem yaparak oynamayı öğrendi. Sistem kaydettiği video ve ses verisindeki örüntüleri tarıyor ve hipotezler öne sürüp bunları test ederek oyunun kurallarını yavaş yavaş öğreniyor. Sistemde önceden oyuna dair tanımlanmış (hard-coded) herhangi bir kural bulunmuyor.

Kaynak: http://www.newscientist.com/article.ns?id=dn6914

FM sitesinde daha önce yapay zeka ve bilişsel bilim (cognitive science) ile ilgili yayınlanmış bazı yazılar:

StarLogo: The Next Generation

FZ

Dağıtık ve paralel modelleme, simulasyon ve benzeri işler için tam teşekküllü bir ortam sunan StarLogo sisteminin 3 boyutlu ortama yönelik geliştirme yapmayı sağlayan sürümü StarLogo The Next Generation çıktı. MIT tarafından desteklenen ve geliştirilen projenin programlamayı daha geniş ve genç bir kitleye yayması, karmaşık sistemlere dair düşünme ve modelleme yetilerini geliştirmesi hedefleniyor.

OCaml İle Yazılan Yeni Bir İşletim Sistemi: Desert Spring-Time

FZ

Desert Spring-Time, OCaml dili ile geliştirilen açık kodlu bir işletim sistemidir.

Projenin amacı BeOS gibi yenilikçi işletim sisteminde gündeme gelmiş modern fikirleri yeniden ele almak ve bunları ileri noktalara taşımak, böylece ortaya stabil ve güçlü bir işletim sistemi koymaktır.

Bu işletim sistemi mikro-çekirdek mimarisini ve asenkron mesajlaşmayı kullanmaktadır. İşletim sistemi şu anda x86 uyumlu işlemciler üzerinde çalışmaktadır.

Editörün Notu: OCaml ile geliştirilmiş popüler bir uygulama: MLDonkey

Musonya Translator

muratdicle

Geçtiğimiz günlerde Google'ın Türkçe çeviri hizmetinin devreye girmesiyle artık bizimde bu servisten sonuna kadar faydalanmamız gerektiğini düşündük. Ve "Musonya Translator" adında yeni ve ücretsiz bir ürün geliştirdik.