Bu sayfadaki yazılar
Sayfanın metni
Sayfa 70
F-BASIC
Tam anlamıyla bir hız değişikliği için Delphi Noetic Systems Inc.'in bu BASIC derleyicisini deneyin. Bir BASIC hedefinden gördüğüm en hızlı kodu üreten F-Basic birçok ileri programlama ve optimalizasyon özelliğinin yanında AMIGA programcılığını kolaylaştıran çok sayıda fonksiyona sahip. Bu dil ayrıca bütün BASIC'ler içinde en fazla teknik ustalık gerektireni; karmaşık yetenekleri ve CLI'den oluşan arabirimi sayesinde en yüksek öğrenme eğrisine sahip. F-Basic, programınızı bir tamponda (buffer) derledikten sonra bu derlenmiş kodu diskete kaydetmenize olanak tanıyor. True BASIC programları, makine koduna değil de bağımsız bir yalancı-kod'a derliyor. Bu da eğer hedef kodunuzu da çoğaltıp dağıtmadan, True BASIC ile hazırlanmış yazılımı dağıtmak istiyorsanız, True BASIC'ten kendi run-time destek kodunu dağıtmak için lisans almanız gerektiği anlamına geliyor. True BASIC'in dökümantasyonu çok çok iyi, hatta şimdiye kadar gördüklerimin en profesyonelce yazılmış olanlarından birisi. İki ciltlik detaylı kılavuz kolay okunur, iyi indekslenmiş ve öğretici türden. Aslına bakacak olursanız yazılımın kendisi de kılavuza verilen önem gösterilmiş olsaydı, bu gerçekten harika bir BASIC olacaktı. Maalesef, derleyiciyi çok yavaş buldum, hatta bazı hatalar bile keşfettim. Büyük dosyalarda bazen yazı tamponunu göçertip source kodunu yok eden rastgele hatalar meydana geliyor. Dil, kendisini yaratanların, IBM PC, Atari ST ve Macintosh'ta çalışan True BASIC ile tam olarak uyumlu olduğunu savundukları bir komut setiyle övünmekte. Buna ek olarak isteğe bağlı özel bir programcı paketi satın alarak True BASIC'in yapıştırıcı rutinleri üzerinden AMIGA'nın bütün fonksiyonlarına erişim imkanına sahip olabilirsiniz, fakat tabii ki bu kodunuzun portatif olma özelliğini yok edecek. Bu da beni bu BASIC'e ilişkin bir numaralı şikayetime getiriyor: Uyumlu komut seti AMIGA'ya özgü bir şey yaratacak kadar iyi değil. Line, Box ve Draw fonksiyonlar şimdi çok yaygın fakat ek harcama getiren programcı rutinlerini kullanırken portatifliği kaybediyorsunuz. Ancak AMIGA Basic birazdan göreceğimiz gibi AMIGA'ya aynı çeşit bir alt-kademe erişim sağlıyor. Bu nedenle, bütün yapmak istediğiniz True BASIC'in çalıştığı dört değişik model bilgisayarda da aynı şekilde görünüp çalışacak programlar yapmaksa bu sizin hayalinizdeki dildir. Fakat gerçekten AMIGA'nızda bu tip yazılım mı hazırlamak istiyorsunuz? True BASIC Inc. ayrıca yazı dizisi manipülasyonu, üç boyutlu grafikler ve sıralama ve araştırma gibi görevler için bazı destek kitaplıkları sağlıyor.
AMIGA BASIC
Eğer henüz Extras disketinizin derinliklerine dalmadıysanız, bunu şimdi yapın. AMIGA'nızı satın aldığınızda verilen BASIC her türlü amaç için yeterli bir dildir. Microsoft BASIC'in AMIGA versiyonu güvenilir ve çok sayıda dahili AMIGA-spesifik fonksiyonu içeren iyi dökümantasyonla bir BASIC olarak göze çarpıyor. Bu aslında makine diline çevrilen bir BASIC fakat AC/BASIC V1.3 derleyicisi ile (aşağıda anlatılan) yazılımı tek parça haline getirerek derleyebilirsiniz. Bununla birlikte editöründen nefret ediyorum (mümkün olduğunca Macintosh versiyonuna benzer yapılmaya çalışılmış). Kursor öyle ufak ve mouse kontrolü öyle sıkıcı ki, bir dosyada uzun süre uğraşıp düzenlemeler yapamıyorum. Bu problemin çözümü mü? Düzenleme işleminin F-Basic'te yapılmasına ulaşıyor. Ne olursa olsun öğrenmek için harcayacağınız çabaya değer. Üstelik pakette size yardımcı olacak 70 kadar örnek program yer alıyor. F-Basic'in diğer pek çok BASIC'te bulunmayan özellikleri arasında recursion, kayıt yapıları (C yapılarına benzer şekilde ve AMIGA'da sıkça kullanılan), pointer'lar ve 68000 CPU sicillerine doğrudan erişim imkanı bulunuyor. Bu çok gelişmiş ve ileri özellikleri kullanmaya pek ihtiyacınız olmayacak, fakat ileride gerek duyarsanız elinizin altında hazır duruyor olacaklar. AMIGA'nın pencereleri, ekranları ve menüleriyle kolayca çalışabilmenizi sağlayan fonksiyonlar da mevcut, ancak karakter dizileri ve sayıların bellekte nasıl düzenlendiğini öğrenmeniz gerekiyor. Bu fonksiyonlar oldukça kısıtlı, bu yüzden kendinizi F-Basic'ten ROM Kernel rutinlerini nasıl çağıracağınıza ilişkin bir araştırmaya başlamış olarak bulabilirsiniz. Bunu, “&SYSLIB” ifadesini hedef dosyanıza yerleştirerek ve sonra da istenen kitaplıkları açmaya yarayan F-Basic komutunu girerek yapmanız mümkün. Doğru kitaplıkları açtığınızda parametreleri onlara geçirerek ROM Kernel rutinlerinden herhangi birini çağırabilirsiniz. F-Basic sistem çağrılarının kendi yapıştırıcı rutinleriyle mi yoksa siciller hazırlanarak çağrıların doğrudan mı yapıldığı konusunda tam olarak emin değilim, fakat hepsi çalışıyor. Derleyici ve derlenmiş yazılımı çalıştırırken F-Basic run-time destek kitaplıklarının sürekli mevcut olması gerekiyor. İşin ilginç yanı derleyicinin kendisinin de F-Basic'te yazılmış olması. Eğer run-time destekli F-Basic kodunuzu çoğaltmak istiyorsanız, her ürün için bir lisans çıkarmanız ve bir kayıt ücreti yatırmanız gerekiyor. Paketi yapanlar derleyicinin daha iyi bir versiyonunun, bir SHDHP ve “F-Basic Mantıksal Programlama Uzantısı” (her nasılsa Prolog ve Lisp ile bağlantılı) hazırlanmakta olduklarını verdikleri ilanlarda açıklıyorlar. Bir BASIC bunlara kadir miydi acaba? Eğer hemen rahatlıkla kullanabileceğiniz bir BASIC istiyorsanız, benim önerim AMIGA Basic ve aynı zamanda AC/BASIC derleyicisini satın almanızdır. Fakat daha fazla güç ve sürat peşindeyseniz, o zaman F-Basic doğru seçimdir - tabii onu öğrenmeye ayıracak vaktiniz varsa.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 71
Forth
Derler ki, “Forth'u ya seversin ya da ondan nefret edersin”. Arada bir tarafsız kalanlara da rastlayabileceğiniz gibi, bu deyiş esasen doğrudur.
Benim gibi dilinde program yapmaktan hoşlanıyorsanız, mutlaka bu dili seveceksiniz. Çünkü assembly diline en yakın yüksek seviyeli dil bu dildir. Son derece esnek bir dil olan Forth'ta programlamanın kendisi dile komut eklemek şeklinde olmaktadır.
:merhaba. ifadesi, adında yeni bir komut tanımlamanın Forth'ça şeklidir ve çalıştırıldığında yazacaktır. Her Forth sisteminin bir çevirici ve bir derleyicisi vardır. Programınızı, yeni komutlardan oluşan kendi komutlarınızı dile derleyerek tanımlarsınız; bundan sonra çevirici ona verdiğiniz komutları işleme koyacaktır. Örneğin sadece şunu yazarsınız;
merhaba
Forth çeviricisi yeni komutunuzu çalıştıracaktır. Komutlar veya kelimeler bir çok farklı hazinesi halinde gruplanmış bir 'sözlük'te saklanırlar. Forth bazen dokuma bir dil olarak çağrılır, çünkü kelime hazineleri sözlük içinde sanki iplerle birbirlerine bağlanmıştır. Diller içinde en kavranılabiliri olmayan Forth özel kapalı isimler kullanır ve gerçek Forth programcıları bu isimlerin doğru telaffuzu konusuna önem verirler. Forth hedefini okuma ve anlama yeteneğiniz, hatta bu kendi hedefiniz bile olsa, tamamen programcının kendi açıklık ve tekniğine bağlıdır. Buna karşın yine de karşıt söylentilere rağmen anlaşılabilir Forth programları yazmak mümkün. Ayrıca Forth, programcıları modüler kod bakımından düşünmeye zorluyor. Bir Forth kelime tanımının ne kadar kısa ve basitse o derece iyi olduğunu düşünürseniz, programdaki her kelimenin ufak bir görev yaptığını anlarsınız. Forth kelimeleri, parametreleri yığında birbirine iletirler, fakat pek çok dilde bulunan komutların aksine çağrı yapan yazılıma çoklu sonuçlar verme gibi bir özellikleri var. AMIGA için yazılmış Forth sistemlerinin iki temsilcisi, Multi-Forth ile CSI ve JForth ile Delta Rocoanoh. Her ikisi de iyi yazılmış profesyonel yazılım paketleri, iyi dökümantasyon ve pek çok örnek sunuyorlar. Sistemler ayrıca 68000 assembly dili arabirimlerine ve tek parça program yapabilme özelliğine sahipler.