the scene > coding

Yakın Gelecekte Herkes Program Yazabilecek Mi?

(1/2) > >>

gibraltar:
Adamlar "hemen hemen" doğal dil ile yazılmış metinleri program koduna, daha doğrusu düzenli ifadeye dönüştürebilecek bir algoritmadan bahsetmişler.
Akademik dökümantasyonları da ekte vermişler. [1][2]
http://web.mit.edu/newsoffice/2013/writing-programs-using-ordinary-language-0711.html

Yakın gelecekte, en azından basit ingilizce ile kod yazmak mümkün olabilir mi? Böyle bir durumda programcı olmayanlar da kod yazabilir mi? Bence başlangıç seviyesi işler için programcı olmayanlara bir şeyler yaptırabilir, ama o kadar, daha fazlası değil.
Muhtemelen bu çalışmalar belli bir noktaya gelmiştir, acaba algoritmayı kullanan kurumsal ölçekte sağlam bir sistem ne zaman ortaya çıkar?

Fikirleriniz almak isterim.
"Yok öyle bişey" tarzı cevapları kabul etmiyorum. :)

(Konuyu yanlış yere açtım sanırım, "geyik" bölümüne taşınabilir, coding mevzusunu ilgilendirse de doğrudan coding durumu yok.)

Dilemma:
Ben kendimce bunları gereksiz buluyorum. Zira bir çok kez ve hâlen programlama öğrenmeye çalışan biri olarak şunu söyleyebilirim ki.

cout

skate:
bu konuyu Endo'ya havale ediyorum. Endo, buyur kardeşim, söz senin. :)

endo:
Benzer konuları daha önce bolca tartıştığımızdan konuyu bana havale etmiş Skate :)

"Yakın Gelecekte Herkes Program Yazabilecek Mi?", elbette şu anda da isteyen herkes program yazabilir :) Elbette burada kastedilenin bu olmadığının farkındayım.
Karmaşık ifadeler ve bir grup kafayı kırmış insanın anlayabildiği garip semboller olmadan program yazmakla ilgili bir kaç deneme yapıldı,
Bunlar içinde en beğendiğim 1990'da çıkan Amiga Vision görsel programlama diliydi (bildiğim kadarıyla bu derece görsel olan ilk dildi) http://www.youtube.com/watch?v=u7KIZQzYSls
Yakın zamanda benzer iddialarla çıkan başka örnekleri de var: http://livecode.com/ (http://runrev.com/) "Neredeyse ıngilizce" gibi bir yazım şekline sahip olmasına karşın belirli bir karmaşıklığı aşamadığını düşünüyorum.

Benim düşünceme gelince; bu işin hayalimizdeki gibi olmasının "yakın" zamanda olacağını sanmıyorum, öte yandan orta-uzun vadede bu konuda gelişmeler olacağı kesin; örneğin geçenlerde verilen metnin paragraflarının "ne hakkında olduğunu anlayabilen" bir yapayzeka uygulamasına rastladım.

Basit ifadelerle program yazmayı mümkün kılmak için en kuvvetli yolunun Domain Specific Language (DSL) olduğunu düşünüyorum (http://en.wikipedia.org/wiki/Domain-specific_language); bu, belirli işleri yapmak için tasarlanmış mini diller (ya da bir dilin içindeki bir sub-language) olarak düşünülebilir. Örneğin aşağıdaki ifade tamamen geçerli bir program parçası:

wait until 12:00:00 then send mail me@example.com "Yemek vakti!"

Eğer bir dil kendi DSL'inizi kolayca yapmanızı sağlıyorsa; müşterinize, kendinize ya da kardeşinize kullanması için "basit" bir dil sunabilirsiniz. Bu noktada günümüz dillerinin pek başarılı olabildikleri söylenemez. Başarılı olamamalarının en büyük nedeni context-independent olmaları, yani IF kelimesinin kullandığımız dilde (Java, C# vb.) her yerde, o bildiğimiz IF (keyword) anlamına gelmesi, farklı bağlamlarda farklı anlamlara gelemiyor olması. Yine de bu konuda umut vadeden çalışmalar var.

Son olarak, hayalimizdeki gibi "ben konuşayım bilgisayar yazsın" noktasına gelmemiz  ya da "bana köşeden iki lahmacun kap gel" şeklinde bir programlama diline sahip olmamız çok olası değil, ancak bugünkü kadar karmaşık olmasının bir gereklilik olmadığını biliyorum.

endo:
Konuyla ilgili olduğundan paylaşıyorum: http://vimeo.com/71278954

32dk'lık bir video, ilk 29 dakikayı çok dikkatli izleyin, son 3 dakikayı daha da dikkatli izleyin.

Navigasyon

[0] Mesajlar

[#] Sonraki Sayfa

Tam sürüme git