1 Eylül 1987 Tarihli Commodore Gazetesi Sayfa 56

1 Eylül 1987 tarihli Commodore Gazetesi Sayfa 56
Metin içeriği (otomatik olarak oluşturulmuştur)

LOGO )öreniyoruz (3) DR. AFİF NEZİHİ SAY Ortalık karışmadan önce, şimdiye kadar kapsamış ol- duklarımızı kısaca bir hatırlayalım: LOGO dilinde kul- lanılan her terim ya bir işleme (procedure) ya da bir nes- neye (object) işaret eder. “Nesne"'den kasıt diğer diller- de “değişken” adıyla bildiğimiz şey. Ama sizi LOGO'- yu öğrenirken diğer dillerin mantığının pek yararlı olma- yacağı konusunda da uyarmıştık. LOĞGO'da sayısal de- Bişkenlerle diğerleri, hatta değişkenlerle parametreler ara- sında bir fark gözetilmez; hepsinden aynı şekilde söz edi- lir. Şimdi de hangi tür terimin neye karşılık geldiğini tek- rarlayalım: Eğer herhangi bir terimi yalın halinde, yani önüne hiçbir işaret koymaksızın kullanırsanız, LOGO bu- nu bir işlemin adı, yani bir komut olarak yorumlar. Di- yelim ki kullandığımız terim AFIF. Eğer daha önce bu ad altında bir işlem tanımlamıştıysanız, LOGO bu terimle karşılaştığında işlemi yerine getirecektir. Yoksa, THERE IS NO PROCEDURE NAMED AFIF diye bir hata mesajı verecektir. Eğer kullandığımız terimden önce bir “'işareti kulla- nırsak, LOGO bu terimi bir nesnenin (değişkenin) adı ola- rak yorumlayacaktır. Aynı nesnenin içeriğine ulaşmak is- tiyorsak, yani doğrudan doğruya bir değerden söz etmek istiyorsak, bu kez terimin başına bir : işareti koymamız gerekiyor. Örneğin “AFIF yazdığımız takdirde, LOGO bir nes- ne adı olarak yorumladığı bu terim karşısında hiçbir şey yapmayacak, yalnızca nesnenin adını yankılayacaktır. Yani bize AFIF diyecektir. Eğer AFIF nesnesinin içeriğine, yani AFIF'- in taşıdığı değere ulaşmak istiyorsak, bu kez :AFIF yaz- mamız gerekiyor. Ama bu takdirde de, LOGO bize THERE 15 NO NAME AFIF hata mesajını verecektir. Ne oldu? Hiç, sadece henüz AFIF nesnesi ile bir değeri eleştirmemiş olduğumuz için, LOGO AFIF'i tanımıyor. Bunu yapmamızı, herhangi bir nesneye değer vermemizi mümkün kılan komut (işlem) ise MAKE. MAKE iki parametre alır; bunlardan birincisi değer ve- rilecek nesnenin adı, ikincisi de nesnenin alacağı değer- dir. Eğer bu nesnenin taşıyacağı değerin bir sözcük, ya- ni bir karakter zinciri olmasını istiyorsak, o zaman bu sözcüğün de başına “işaretini koymamız gerekiyor. Eğer nesnenin içermesini istediğimiz değer sayısalsa, o zaman sayının kendisini yazmamız yetiyor. Yani, MAKE “AFIF” BECERİKLİ diye yazdığımız takdirde, artık AFIF nesnesi, BECERİK- LI değerini taşıyacaktır. Bu yüzden, şimdi :AFIF yazdı- ğımız takdirde, LOĞO bize BECERİKLİ diyecektir. Keza, MAKE “AFIF 20 komutundan sonra, :AFIF teriminin cevabı 20 olacaktır. SÖZCÜKLERDEN LİSTELERE Nesnelerin içeriklerinin sayısal ya da karakter zinciri olabileceğini gördük. Ancak şimdiye kadar gördüğümüz içeriklerin ortak bir özelliği var: Hepsi de tek bir sözcük uzunluğundaki içerikler. Yani LOGO sayıları da birer sözcük olarak yorumluyor. Bu yüzden bundan sonra nes- nelerin içeriğinden söz ederken genel olarak “sözcük” terimini kullanacağız. Bir sözcük, aralarında boşluk bu- lunmayan herhangi bir (sayısal ya da değil) karakterler dizisidir. Bazı örnekler: 28 3.1476 ÇEKOSLOVAKYALILAŞTIRAMADIKLARI- MIZDANMISINIZ? 12 EYLUL Peki, ya benim sözcüğüm boşluk da içersin diyorsak, commodore GA 56

Bu sayıdan diğer sayfalar: