Shakespeare Programlama Dili

0
FZ
Dünya edebiyatında önemli bir yeri olan Shakespeare'în üslubunu sevin ya da sevmeyin, yarattığı etki ve kalıcılığı tartışılmaz. Rama'da, ürettiği robotlara Shakespeare oynatan dahi mühendis gerçek bir karakter olsaydı (ki aslında hiç yok diyemeyiz) herhalde Shakespeare programlama dilini görseydi bıyıkaltından gülerdi.

Peki bu dil neye benziyor? Değişkenler Shakespeare oyunlarından alınma, sahneye giriyorlar, birbirlerine bir şeyler söyleyerek değer yüklüyorlar. Mesela negatif değer yüklemeniz için karakterlerden biri Hamlet'e hakaret ediyor. Bu kadarla kalsa iyi!
İki sayıyı toplayan örnek bir Shakespeare kodu:


Romeo, A character to store the sum.
Juliet, An admirer who helps to calculate the sum.

		Act I: A simple play.

	Scene I: Juliet's conversation with Romeo.

[Enter Romeo and Juliet]

Juliet: Listen to your heart!

Romeo:  You are as beautiful as a sweet red rose. 
	Listen to your heart.

Juliet: You are as brave as the sum of me and thyself.
	Open your heart!

[Exeunt]

Görüşler

0
darkhunter
#!/usr/bin/python # -*- coding: utf-8 -*- # Cevat Programming Language (aka 100 haneli monolog) print "* Çıkış için q" for x in range(100): monolog=raw_input('Muhabbete devam: ') if monolog == 'q': break print "Evet Cevat Abi"


* Çıkış için q
Muhabbete devam: Baba ne olacak bu Şekspir dili, tutar mı sence?
Evet Cevat Abi
Muhabbete devam: Yapma yahu!
Evet Cevat Abi
Muhabbete devam: Herşeye de evet denmezki canım :(
Evet Cevat Abi
Muhabbete devam: q
0
Zebani
Bir zamanlar, Bilgisayar Pazarı diye bir bilgisayar dergisi vardı ve orda QBasic dilinin Türkçeye çevrilmiş hali "Basit" diye bir dilin reklamı vardı? Bu konuyla bir alakası yok ama aklıma geldi. Benim gibi böyle bir dilin varlığını hatırlayan var mı? Tabii bu dilin kendisini temin edebileceğim bir kaynak daha da iyi olur. Nostalji ne de olsa :).
0
Chaosopher
Onu hatırlamıyorum ama, sizin yazdıklarınız ve aşağıdaki haber birleşince ben de Commodore dergisinin Program Döküm Eklerindeki makina dili kodları hatırladım hala evde bir yerlerde duruyor olmalılar. Viva nostalgia...
0
anonim
commodore dergisinde ekrana yazmak icin isikli kalem(!) yapmayi ogreten bir sayi vardi. Yapmak istemistim eh haliyle izin vermemislerdi(lehim gerektiriyordu). 64ler de Omay diye bir yazar vardi, AMOS dilini ogreten fasikuller verirlerdi. Oyun oynamaktan hic deneyemedim :)
0
ersin2k
Bende Bilg. Pazarının eski sayıları var ama maalesef Basit yok. Bir de o zamanlar oradaki kodları yazar yazar dururdum. Sonra çalışmazdı :). Yine de güzel dergiydi.
0
Zebani
Ya derginin kopyaları geçen seneye kadar bende de vardı ama taşınırken attım :(. Beynim beni yanıltmıyorsa %100 eminim öyle bir dilin reklamı vardı. Üzerinden bir 10 sene filan geçtiği için ancak reklamın var olduğunu hatırlıyorum. Hangi sayıdaydı, kimler yapmıştı malesef hiç hatırlamıyorum.
0
robertosmix
"Basit" hatırlanmazmı canım. Ciddi ölçüde ilgimi çekmişti. Kimler? Ne amaçla geliştirmiş olabilir diye düşünmüştüm. Borland'a (abartmışım şüphesiz) yerli bir eşdeğer gelirmi diye de kendimi alamamıştım hatta.
0
Zebani
"Basit" eliniz de var mı? varsa bana gönderebilir misiniz?
0
FZ
Soru şu: Ne zaman bir Türk hackerı çıkıp Divan Şiiri Programlama Dili yapıp bunu sourceforge.net'te yayınlamak sureti ile insanlık kültürüne armağan edecek? Ve böylece şiir gibi kod yazabileceğiz...
0
Chaosopher
Onu bilemem ama. Yukaridaki kod parcasi pek ala bir "Erdener Programlama Lisani"nin baslangic fikri olabilir. Siir gibi degil ama "asabi" kodlar yazilabilir onunla :) sourceforge'da anlayan olur mu bilmem ama :)
0
Tarık
Sizler C#, Java, Ruby gibi üst düzey dillerden önce assmbley, c gibi aşağı seviye dilleri ne zaman özendirmeye başlarsanız o zaman.
0
belfagor
Haklısın Tarık. Dikkat ettimde lisp üzerinde yoğun olarak duruluyor. bir çok genç arkadaşımız daha asm den c den anlamadan delphi vb öğrenmeye çalışıyor. daha sonrada oldukça fazla zorluklar çekiyorlar. temeli sağlamlaştırmadan bina yapmaya çalışılırsa sonuç hüsran olur....
0
Tarık
belfagor, aslında Lisp, Scheme gibi diller programlama kavramlarını öğrenmek için tavsiye edilebilir diller. Zaten C den de eski dillerdir bunlar. Fakat gel gelelim java, c# vs.vs. gibi gelişmiş sistemleri daha nasıl çalıştıklarını dahi anlatmadan insanlara "al bunu kullan" demek çok ilginç geliyor doğrusu. Yani bizimde gerçek birşeyler geliştirebilmemiz için en azından javayı, csharp ı geliştiren adamların geçtikleri yollardan geçmemiz gerekir diye düşünüyorum. Bunu akademisyenlere bırakırsak işimiz var demektir. Ben okulların ilgili bölümlerinden mezun olup daha birçok temel kavramı idrak edememiş insanlar biliyorum. Bu insanlar vb, delphi, java, c# bilmemne ile yeni programlama kavramlarını kullanarak hızlı bir şekilde birşeyler geliştiriyorlar. Ama yarın öbürgün sistemde olan bir hata durumunda veya bu tip şeylerde armut gibi yüzümüze bakıyorlar. Bu onların suçu değil bence ama neyse yaa, bu ülkede neyi doğru yapıyoruz ki. Bununda bize fatura olacağı bir zaman gelecektir.
0
parahat

"bu ülkede neyi doğru yapıyoruz ki"

Felsefenizi anlamak zor. Bir programalama dilini ülkeyi ve vatandaşlarını suçlayarak doğurabileceğinizi zannetmiyorum. Ayrıca Java'da, C#'da üzerinde binlerce insanın emeği olan, güzel ve en az C ve Assembly kadar faydalı programlama dilleridir. İnsanlar bunları öğreniyorsa ülkeyi, devleti ve vatandaşları suçlamanın bir anlamı yok.
0
bm
Hmm, buradaki lisp tavsiyelerinin bir kisminin arkasindaki biri olarak soyleyeyim niyet 'lisp ogrenin yeter' demek degil. Insanlar 'biz birsey bilmiyoruz, neler ogrenmeliyiz' diye sorduklarinda 'lisp ogrenin' denmiyor onlara, ben bir ara buraya (Ingilizce bilenler icin) bir calisma programi bile yazmistim. Baskalari da yazdi. Programlama baglaminda ESR'in ve KMP'nin dil listeleri gerekceleriyle tercume edilmis olarak hem burada hem baska yerlerde cikti.

Lisp isi zaten iyi biliyorum diye dolasan insanlara 'bakin burada bir tarih ve belki size en azindan ufuk acma vs. islerinde yarayacak bir tarz var' demek niyetiyle devreye giriyor. Bir de heveslileri arasinda yazi yazmaya meyyal insan cok olunca (yahut tek basina on kisilik tanitim yapan bir FZ olunca) ister istemez cok bahsediliyor. Niyet ve amac insanlari yanlis yonlendirmek degil, boyle yaptiysak birseyi yanlis yapmisiz demektir.

0
FZ
Bir dil tasarlama işinin sadece C ve belli bir işlemcinin assembly dili kullanılarak yapıldığını düşünmüyorsunuz sanırım? Bir sözdizim ve semantik tasarlamak, sonra bunlara uygun yazılmış kaynak kodu çalıştırılabilir koda dönüştürmek başka dillerle de yapılıyor. C, lex (flex), yacc (bison), vb. araçlar, evet, dil tasarlamak ve uygulamak için çok kullanıldılar ancak bu mantıki bir zorunluluk değildi. Neden C ve assembly kullanmadan bir dil tasarlanamayacağını ve uygulanamayacağını düşünüyorsunuz (en azından ima ediyorsunuz)? ML, SML, Java, OCaml, Haskell gibi diller ve geliştirme araçları ile çeşitli diller, derleyiciler tasarlanıyor (bu arada Java'yı tabii ki üst seviyeli dil saymıyorum, bunu belirtmek isterim, C ve C++ ne kadar üst düzeyse Java da o kadar üst düzey).

Birkaç örnek vermek gerekirse:

Modern Compiler Implementation in Java

Modern Compiler Implementation in ML

One-Day Compilers, Or: How I Learned to Stop Worrying and Love Static Metaprogramming
0
Tarık
FZ, olayı sadece dil tasarlamak olarak ele almadım. Yeterli el ve parmak kasınız varsa dil tasarım işini kağıt kalem kullanarakta yapabilirsiniz. Tek noktaya odaklanmadan bütünü görmeye çalışın lütfen. Burada vurgulamak istediğim asıl nokta "bu araçlarla bunlar yapılamaz" değil. Elbetteki çoğu gelişmiş yazılım diliyle bu işler yapılabilir. Önemli olan hiçbirşeyi bilmeyen bir programcı adayının en az dışarıdaki meslektaşları düzeyinde bu işi öğrenebilmesi için kafa karıştırmadan herşeyin temelden adım adım işlenmesi. Yani bu şeyleri(java, c#, ruby vs.) geliştiren adamlar bu işe "Modern Compiler Implementation in Java" ile başlamadılar. Önlerinde bilgisayar işleyişi le ilgili blgiler, herşeyi sindire sindire öğrendiler. Deneme/yanılma, düşünme, tecrübe kazanma gibi şeyler bilgilerini pekiştirdi. Ve bu sayede bugün kullandığımız herkesin kabul ettiği dilleri, derleyicileri, donanım yazılımlarını, işletim sistemleri, vs. vs. vs leri geliştirdiler. Ben uzun yıllar boyunca okuduğum Türkçeye çevrilmiş 10 larca programlama kitabı içerisindede adamların devamlı olarak bu noktalara temas ettiğini gördüm. Fakat gel gelelim şu zamanda bizden çıkan java vs. kitaplarında insanlara hiçbir şekilde birşeyler tenbih edimeden, sadece platformun neleri ne şekilde kolaylaştırdığından eskiden böle böle iken şimdi bunlara gerek bile olmadığından, "salakmısın yahu onlarla uğraşmak vakit kaybıdır" lardan başka bişey görmedim. İşte tam ben bunları okur ve düşünürken, ülkemizde maalesef hakkaten dişe dokunur sistem, donanım gibi aşağı seviye ar-ge ye yönelik birşeylerin çıkmaması kendimi "doğru düşünüyorsun" gibi hissetmeme yol açıyor. Evet belki insanların beyinlerini yeni teknolojiler yerine eski püskü zaman kaybettiren programcılık metotlarıyla doldurmak mantıksızlık gibi görünüyor ama, bizim gibi bu yönleri gelişmemiş insanların en azından tecrübe sahibi olması gerekli bence.
0
FZ
Sürekli aynı yanlış anlamaları tekrar etmek zoruda mıyız? Birtakım var sayımlarda bulunuyor ve sonra bunlara saldırıyorsunuz. Haberde Shakespeare diye bir programlama dilinden bahsedilmiş, ben de komiklik babında acaba bizim divan şiirine benzer sözdizimi olan ve semantiği de haberdeki dil gibi olan bir dili kim ne zaman yapar demişim. Siz de "Java, C#, Ruby, vs. anlatıldığı sürece kimse yapmaz" demişsiniz. Ben de bir dil tasarımının gerçekleştirilmesinin öne sürdüğünüz dillerin haricinde dillerle de yapıldığını belirttim sadece. Bu durumda bazı (bazı, hepsi değil) üniversitelerdeki eğitim kalitesinin düşüklüğünün yahut okumuş olduğunuz teknik kitaplardaki problemlerin sorumlusu ben mi oluyorum? Bir başka var sayımınız da ülkede düşük seviyeli programlama namına bir şey yapılmadığı. Bunu nereden çıkarıyorsunuz? Bir başka var sayım, bu site (yahut ben) ne zaman "filanca şeyi öğrenmeyin" dedi(m)? Ne zaman C, assembly, gömülü programlama, düşük seviye programlama, vs. ile ilgili bir haber, yazı, makale, yazı dizisi, vs. geldi de geri çevirdik? Tamamen C kodundan ibaret olan ve sağlam, uluslararası çapta bir gömülü programlama projesi olan Xynth projesini burada defalarca haberini geçtik, takdir ettiğimizi belirttik. Forumlarda C ile ilgili konular tartışıldı, vs. Durum bu iken nasıl oluyor da hemen her Common Lisp, Scheme, Haskell, Prolog, vs. haberi geçtiğimizde bir kısım insan "Java'dan niye bahsetmiyorsunuz", bir kısım insan da "boş işler bunlar aslolan C ve assemblydir, işte o kadar" ve bir kısım da "ya C ya da Python" diyor. Bu mudur yani? Lütfen biraz daha geniş düşünceli olalım, olgulara farklı farklı perspektiflerden bakmayı öğrenelim. Bilgi işlem dünyası çok büyük bir dünya ve asla sadece sizin önemli olduğunu düşündüğünüz şeyden ibaret değil.
0
FZ
Bir de eğlenceli bir link vereyim, çoğu kişinin "kitapçı" olarak gördüğü ancak dünyanın en büyük yazılım geliştirme firmalarından biri olan Amazon.com ile ilgili: Tour de Babe - whirlwind languages tour. Bu da yazıdan kışkırtıcı bir alıntı:

The original brilliant guys and gals here only allowed two languages in Amazon's hallowed source repository: C and Lisp. Go figure.
0
Tarık
Amaan sallayınız bu mevzuyu, okuyanlar demek istediğimi anlayacaktır bir şekilde. Evet türkiye her konuda yarmış geçirmiştir. saolun saolun; java, ruby, c#, hede, hodo devam...
0
FZ
Size birtakım örneklerle, argümanlarla gelen bir insana karşı üslubunuz bu mudur? FM üyeleri arasında kimin hangi seviyede, hangi konuda ne kadar deneyimli olduğuna dair bir bilginiz, dolayısı ile fikriniz mevcut mu? Neden hep aşırı uçlarda tavırla karşılaşıyoruz böyle yani ya öve öve bitiremiyoruz ülkemizi ya da "bizden adam olmaz, ben baktım filanca konuda bilgili adam bulamadım demek ki yok" tavrı mevcut?
0
Tarık
FZ, şu şekilde yapalım. Bu konu altındaki

Tarık @ Cuma, 7 Temmuz 2006 (08:14 TSI) (#24576) Sizler C#, Java, Ruby gibi üst düzey dillerden önce assmbley, c gibi aşağı seviye dilleri ne zaman özendirmeye başlarsanız o zaman.

yorumumla başlayan gönderilerimizi silelim. Bu mevzuyu da daha fazla uzatmayalım. Sizin verdiğiniz arada kaynamış olması muhtemel bilgi/bağlantı adresleri gibi şeyler içinde ayrıca teşekkür ederim. Kolay Gelsin.

Görüş belirtmek için giriş yapın...

İlgili Yazılar

Terminator Unit - X

sundance

Biraz eğlenelim, gelin beraber bir Linux çizgiromanına bakalım

Esprileri, anlatımı ile bence çok eğlenceli ve geekly olmuş. Dahası sektörden kişileri de içeriyor, Slashdot`ın kurucusu Commander Taco bile var içinde. Bir gözatın derim...

BSD mi daha iyidir GNU/Linux mu?

syntor

Fazlamesaiciler içinde GNU/Linux sevenler de var BSD sevenler de. Peki hangisi daha üstün? Tabii ki BSDciler BSD, GNU/Linuxçular GNU/Linux diyecektir.

Bu konuya farkli bir açıdan yaklaşan bir arkadaş BSD nin üstünlüğünü burada ispatlamış :)

Nasıl CV yazılır ?

sundance

Hepimizin hayatında "CV yazmalıyım, ne yapsam, nasıl yazsam?" dediği bir dönem olmuştur. İyi kötü herkes birilerinden formatı kapıp cv yazar, bkz. Enver Altın'ın CV'sinden benim çektiğim kopya

Fakat bir de gerçekten yaratıcı olanlarımız var ki onlar uzun süre iş aramıyor :)

Molesoft UK Genel Müdürü ile Röportaj

FZ

Molesoft'un İngiltere müdürü eleştirileri yanıtlıyor.

Bu hafta, Molesoft'un İngiltere operasyonlarından sorumlu müdürü Nigel Archway ile yaptığımız röportajı gururla sunuyoruz (söz konusu şirketle diğer şirketler arasındaki benzerlikler tamamen tesadüfidir)

Dağarcığınıza Her Gün İki Söz

auselen

Türk Dil Kurumu, elektronik posta adresini bildiren herkese günde iki kelimeyi, anlamı ile birlikte ücretsiz olarak gönderiyor: http://tdk.org.tr

Pek güzel bir hizmet, hergün bir tebessüm garantili. Bugünkü ise bizlere bayram şekeri gibi...