Fonksiyonel Programlama’ya geniş bir bakış

The Great DepressionYıl 1930’lar. The Great Depression. Amerikan ekonomisinin yerle bir olması, paranın değerinin düşmesi, ekonomik kriz… Tüm gelişmiş ülkeler o zamanlar bu krizden etkilenir.

O zamanlar Princeton üniversitesinde Alonzo Church, Alan Turing ve Jon von Neumann çeşitli araştırmalar yapıyorlar. Bu üç adamın çalıştığı konu genel olarak formal sistemler. Hesaplamanın ve hesaplamanın otomatikleştirilmesi gibi sorunlara çözüm arıyorlar. Alonzo Church lambda calculus isminde bir formal sistem geliştiriyor. Aslında bu sisteme hayali bir makine için kullanılacak bir programlama dili diyebiliriz. Dilin temelinde fonksiyonlar var, parametre olarak fonksiyon alıyor ve fonksiyon döndürüyor.

Alonzo Church, Alan Turing, John von Neumann

O sıralarda Alan Turing, Alonzo’dan bağımsız bir şekilde benzer bir konu üzerinde çalışıyor. Günümüzde Turing Machine olarak bildiğimiz formal sistemi geliştirmekte. Alonzo Church ile benzer sonuçlara ulaşıyor. Daha sonra bu iki yapının hemen hemen eşit güçlere sahip oldukları görülüyor.

Şimdi diğer taraftan olaya bakalım. Amerikan savunma sanayisi matematikçileri toplamış habire diferansiyel denklem çözdürüyor, amaç hedeflerin vurulma yüzdelerini arttırmak (burada gülüyoruz). Yine aynı kişiler 2. Dünya Savaşı’na hazırlanılırken boş durmuyor, Mark I ismi verilen balistik cetvelleri çözmek için ilk makineyi geliştiriyor (bu makine IBM tarafından geliştiriliyor). Tam olarak 5 ton ve 750.000 parçaya sahip bu makine, saniyede 3 operasyon yapıyor.

EDVAC

1949 yıllarına geldiğimizde Electronic Discrete Variable Automatic Computer (EDVAC) adında yeni bir bilgisayar geliştiriliyor ve çok başarılı oluyor. Bugün von Neumann mimarisi diye bildiğimiz mimarinin ilk uygulanmış hali bu bilgisayarda kullanılıyor. Turing makinesinin ilk gerçek uygulamasıda burada gerçekleştiriliyor.

1950’lerin sonunda MIT’de profesör olan John McCarthy Alonzo Church’ün çalışmalarına merak sarıyor ve Lisp dilini ortaya çıkarıyor. Lisp lambda calculus’un bir uygulaması ve von Neumann bilgisayarları üzerinde çalışıyor.

Okumaya devam et