Commodore sayı 38, sayfa 71

Bu sayfadaki yazılar

Sayfanın metni

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.

Klavyeyle gezinmek için ← ve → tuşları.