İçeriğe atla

ALGOL

ALGOL
ALGOL-20 için 1965 tarihli bir kılavuz
ParadigmasıYordamsal, zorunlu, yapısal ve çok paradigmalı
İlk çıkışı1958 (66 yıl önce) (1958)
TasarımcıBauer, Bottenbruch, Rutishauser, Samelson, Backus, Katz, Perlis, Wegstein, Naur, Vauquois, van Wijngaarden, Woodger, Green, McCarthy
Önemli uygulamalarıMARST
EtkiledikleriSonraki zorunlu dillerin birçoğu ("ALGOL benzeri" diller de dahil) örneğin; PL/I, Simula, Pascal, C, Ada ve Scheme
AilesiALGOL

ALGOL(/ˈælɡɒl, -ɡɔːl/; adı ALGOrithmic Language'in kısaltmasından gelmektedir),[1] ilk olarak 1958 yılında geliştirilen bir zorunlu bilgisayar programlama dili ailesidir. ALGOL diğer birçok dili büyük ölçüde etkilemiş ve Association for Computing Machinery (ACM) tarafından otuz yıldan uzun bir süre ders kitaplarında ve akademik kaynaklarda kullanılan algoritma tanımlaması için standart yöntem olmuştur.

Tarihçe

ALGOL evrensel bir programlama dili yaratmak için yapılan çalışmalar sonucu doğmuştur. Amerika ve Avrupa'da hızla gelişen bilgisayar bilimi sonucunda tasarlanmış birçok programlama dili vardı. Özellikle Amerikan tekelinde kalmak istemeyen Avrupalı bilim insanları da programlama dilleri üzerinde çalışmalar yapmaktaydılar. GAMM (Almancada Uygulamalı Matematik ve Mekanik Örgütü'nün kısa adı) her makine üstünde çalışabilen evrensel bir programlama dili üzerinde çalışıyordu. Amerika Birleşik Devletlerinin GAMM'ı ikna etmesiyle Avrupa ve Amerika evrensel bir programlama dili üstünde çalışmaya karar verdiler. 1958'de 27 Mayıs'tan 1 Haziran'a kadar Zürih'te yapılan toplantıda evrensel bir programlama dili üstünde çalıştılar. Toplantı sonunda ALGOL 58 adıyla ilk ALGOL doğmuş oldu. Aslında toplantı sonunda programlama dilinden çok bir taslağı çıkmıştı. Amerikalı ve Avrupalı bilim insanlarının birçok konuda yeni fikirler üretmelerine rağmen, toplantılar bazı zamanlar anlamsız tartışmalarla geçiyordu. (Küsuratlı sayılar için nokta mı (Amerikan yöntemi) yoksa virgül mü (Avrupalı yöntemi) kullanılacak gibi.) Toplantı sonunda evrensel bir programlama dili için bir umut doğmuş da olsa ALGOL 58 pek kullanılan bir dil olmadı. Özellikle FORTRAN'ın IBM tarafından çıkarılmış olması ve IBM'in kendi diline ağırlık vermesi ve Amerikan Ordusunun kendi programlama dilini tercih etmesi de bunu etkiledi. ALGOL 58 Avrupalı yaratıcıları tarafından da sahiplenilmedi.

İkinci toplantı 1960'ta Paris'te oldu. 1958'deki toplantının aksine bu seferki bir hafta sürdü. Fakat bu bir haftada büyük gelişmeler kaydedildi. John Backus ve Peter Naur tarafından yaratılan BNF (Backus-Naur form) toplantının en önemli olaylarından biriydi. İkinci toplantının ardından ALGOL 60 beklenen etkiyi yapmadı. Ne Amerika'da ne de Avrupa'da geniş kitlelere ulaşabildi. Bunun en büyük sebeplerinden bir tanesi o zamanki programcıların ALGOL'u biraz fazla karışık bulmalarıydı. Özellikle dilin daha kolay anlaşılması için çıkmış olan BNF onlar için tam bir karmaşaydı. Büyük bilgisayar firmalarının (IBM vb.) da ALGOL'u desteklememesi sonucu bu programlama dili geniş kitlelere hiç ulaşamadı.

Her ne kadar geniş kitlelere ulaşamamış da olsa evrensel bir programlama dili yaratmaya çalışan ALGOL : PL/I, SIMULA 67, ALGOL 68, C, Pascal, Ada, C++ ve Java gibi dillerin atası sayılabilir. Ayrıca BNF formatının çıkması, ayrıştırma teorisinin şekillenmesi, derleyici tasarımı gibi alanlarda yapılan çalışmalarla ALGOL bilgisayar bilimine büyük katkılar sağlamıştır.

Kaynakça

  1. ^ The name of this language family is sometimes given in mixed case (Algol 60 25 Haziran 2007 tarihinde Wayback Machine sitesinde arşivlendi.), and sometimes in all uppercase (ALGOL68 13 Eylül 2014 tarihinde Wayback Machine sitesinde arşivlendi.). For simplicity this article uses ALGOL.

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Pascal (programlama dili)</span> yüksek seviyeli programlama dili

Pascal bilgisayar programlama dili pek çok öğrenciye bilgisayar programlamayı öğreten ve çeşitli versiyonları bugün hâlâ yaygın olarak kullanılmaya devam eden en önemli programlama dillerinden biridir. İlk Macintosh işletim sisteminin çoğu ve TeX Pascal ile yazılmıştır.

<span class="mw-page-title-main">Bilgisayar bilimi</span> belirli evren kurallarına dayalı, sistematik çalışan ve elementlerin ya da ağların birbirleriyle olan ilişkisi

Bilgisayar bilimi, bilgisayarların tasarımı ve kullanımı için temel oluşturan teori, deney ve mühendislik çalışmasıdır. Hesaplamaya ve uygulamalarına bilimsel ve pratik bir yaklaşımdır. Bilgisayar bilimi; edinim, temsil, işleme, depolama, iletişim ve erişimin altında yatan yönteme dayalı prosedürlerin veya algoritmaların fizibilitesi, yapısı, ifadesi ve mekanizasyonunun sistematik çalışmasıdır. Bilgisayar biliminin alternatif, daha özlü tanımı "büyük, orta veya küçük ölçekli algoritmik işlemleri otomatikleştirme çalışması" olarak nitelendirilebilir. Bir bilgisayar bilimcisi, hesaplama teorisi ve hesaplama sistemlerinin tasarımı konusunda uzmanlaşmıştır.

<span class="mw-page-title-main">Association for Computing Machinery</span>

Bilgisayar Derneği, bilgisayar bilimleri alanındaki en eski mesleki kuruluştur. 1947'de kurulmuş, günümüzde 80.000 üyeye ulaşmıştır. Mesleki ve akademik yayınları ile toplantı faaliyetlerinin yanı sıra, bilişim dalının en önemli ödülü kabul edilen Turing Ödülü'nü vermesiyle de bilinir. Merkezi New York şehrindedir. Dünya genelini kapsayan üyelik sistemi ile bilişim teknolojisinin çeşitli alanları ile uğraşan profesyonellere ve öğrencilere kaynak sağlamaktadır.

Fortran, özellikle sayısal hesaplama ve bilimsel hesaplama için uygun olan genel amaçlı, yordamsal, zorunlu programlama dilidir.

Backus-Naur form, adını bilgisayar programcılığının öncüleri John Backus ve Peter Naur'dan alan, 1950'lerin sonunda temelleri Backus'a ait bir makalede ortaya konmuş, formal dillerin ve programlama dillerinin sözdizimini açıklamak için kullanılan bir gösterimdir. Naur'un düzenlediği ALGOL 60 dilinin tanımlandığı makale, Backus-Naur formunun bilgisayar dünyasında tanınması açısından önemli rol oynamıştır.

<span class="mw-page-title-main">Ada (programlama dili)</span> programlama dili

Ada, yapısal, statik tipli, zorunlu, geniş spektrumlu ve nesne yönelimli bir üst düzey bilgisayar programlama dilidir. Pascal ve diğer dillerin genişletilmiş halidir. Gömülü design-by-contract (DbC), güçlü yazımı, açık eşzamanlı, senkronize mesaj geçişi, korunmuş objeli ve belirsiz bir dildir. Ada kod güvenliğini ve sürdürebilirliğini derleyicide hataları bularak geliştirdi.

SQL, verileri yönetmek ve tasarlamak için kullanılan bir dildir. SQL, kendi bir programlama dili olmamasına rağmen birçok kişi tarafından programlama dili olarak bilinir. SQL herhangi bir veri tabanı ortamında kullanılan bir alt dildir. SQL ile yalnızca veri tabanı üzerinde işlem yapılabilir; veritabanlarında bulunan sistemlere bilgi ekleme, bilgi değiştirme, bilgi çıkarma ve bilgi sorgulama için kullanılmaktadır. Özellikle de ilişkisel veritabanı sistemleri üzerinde yoğun olarak kullanılmaktadır. SQL'e özgü cümleler kullanarak veri tabanına kayıt eklenebilir, olan kayıtlar değiştirilebilir, silinebilir ve bu kayıtlardan listeler oluşturulabilir.

<span class="mw-page-title-main">IBM</span> Amerikan çok uluslu teknoloji şirketi

IBM, merkezi Armonk, New York, ABD'de olan, dünyanın en büyük bilişim teknolojisi şirketlerinden biridir. 410.000'i aşkın çalışanı ile 170'ten fazla ülkede faaliyet göstermektedir. Faaliyet gösterdiği alanlar arasında bilgisayar, middleware ve donanım üretimi, yazılım, internet barındırma hizmeti, kuantum hesaplama, bulut depolama, bulut bilişim, bulut veritabanı, yapay zekâ, otomasyon, robotik, sunucu servisleri, danışmanlık ve AR-GE bulunmaktadır. Dünyada her yıl en fazla yeni patent alan şirket durumundadır.

<span class="mw-page-title-main">ENIAC</span> elektrikle çalışan ve elektronik veri işleme kapasitesine sahip ilk bilgisayar

ENIAC, elektrikle çalışan ve elektronik veri işleme kapasitesine sahip ilk bilgisayar. II. Dünya Savaşı esnasında Amerikalı bilim insanları tarafından inşa edilen ENIAC ilk çıkan bilgisayardı. ENIAC, yaklaşık 167 m² bir alana sığıyordu ve ağırlığı 30 tondu.

<span class="mw-page-title-main">Assembly</span> uygulanan işlemlerle programlama dilinin birbirine çok yakın olduğu düşük seviye programlama dilleri

Assembly dili, bir işlemcinin komut kümesi üzerine tanımlanmış alt seviye bir dildir. Assembly dili kolay hatırlanabilir semboller tanımlar ve böylece işlemcinin makina koduna karşılık gelen sayı dizilerinin bilinmesine gerek kalmaz. Assembly dili, platformdan bağımsız yüksek seviyeli programlama dillerinin aksine, işlemci mimarisine bağımlıdır. Tipik uygulamaları; cihaz sürücüleri, alt seviyeli dahili (embedded) ve gerçek zamanlı sistemlerdir. Bır assembly programı assembler kullanılarak makine koduna çevrilir.

<span class="mw-page-title-main">Bilgisayar donanımı tarihi</span> Bilgisayarın işlemcisi ve işletim sisteminin bir bütün olarak geçmişi

Bilgisayarın tarihçesi, bilgiyi hesaplamak, düzenlemek ve değiştirmek için kullanılan yazılım ve donanımların tarihsel gelişiminden bahsetmektedir. Bilgisayar, en basit bakış açısıyla bir matematiksel işlemci, yani bir hesap aracıdır ve veri işler.

Bilgisayar biliminde, Genişletilmiş Backus–Naur formu (EBNF) bağlamdan bağımsız dilbilgisini ifade etmek için kullanılan bir notasyondur. Başka bir ifadeyle, bilgisayar programlama dillerini ve biçimsel dilleri tanımlamanın bir yoludur. Backus–Naur formu (BNF) notasyonunu temel alır.

Programlama dili teorisi (PDT), programlama dilleri olarak bilinen biçimsel dillerin ve bunların bireysel özelliklerinin tasarımı, uygulanması, analizi, karakterizasyonu ve sınıflandırılması ile ilgilenen bir bilgisayar bilimleri dalıdır. Matematik, yazılım mühendisliği, dilbilim ve hatta bilişsel bilime bağlı ve onu etkileyen bilgisayar bilimi disiplinine girer. PDT'ye adanmış çok sayıda dergide ve genel bilgisayar bilimi ve mühendisliği yayınlarında yayınlanan sonuçlarla tanınmış bir bilgisayar bilimi dalı ve aktif bir araştırma alanı haline gelmiştir.

<span class="mw-page-title-main">Anaçatı bilgisayar</span>

Bir anaçatı bilgisayar milyonlarca kullanıcıya eş zamanlı olarak farklı hizmetler verebilen, büyük, güçlü ve pahalı bir bilgisayardır. Anaçatı bilgisayarların gücü şu nedenlerden kaynaklanmaktadır:

Bilgi işlem platformu, bir uygulama yazılımı çalıştırmak için donanım mimarisi ve bir yazılım çerçevesi, yazılım, çeşitli bazı kombinasyon veya sıralamalarını içermektedir. Tipik platformlarda bir bilgisayar mimari, işletim sistemi, programlama dilleri ve ilgili kullanıcı arabirimi içerir.

<span class="mw-page-title-main">Peter Naur</span> Danimarkalı bilişim uzmanı

Peter Naur, Danimarkalı bilgisayar bilimi öncüsü ve Turing Ödülü sahibidir.

<span class="mw-page-title-main">Grady Booch</span> Amerikalı yazılımcı

Grady Booch, Ivar Jacobson ve James Rumbaugh ile Birleşik Modelleme Dili'ni (UML) geliştirmesiyle tanınan Amerikalı bir yazılım mühendisidir. Yazılım mimarisi, yazılım mühendisliği ve işbirliğine dayalı geliştirme ortamlarındaki yenilikçi çalışmaları ile uluslararası alanda tanınmaktadır.

Michael Anthony Jackson, İngiliz bilgisayar bilimcisi ve Londra, İngiltere'de bağımsız bilgisayar danışmanıdır. Aynı zamanda Birleşik Krallık'taki Açık Üniversite'de misafir araştırma profesörüdür.

ALGOL 68, çok daha geniş bir uygulama kapsamı ve daha titiz bir şekilde tanımlanmış sözdizimi ve anlambilim hedefiyle tasarlanmış, ALGOL 60 programlama dilinin halefi olarak tasarlanan programlama dilidir.

<span class="mw-page-title-main">Friedrich L. Bauer</span> Alman bilgisayar bilimcisi ve ALGOL dilinin yaratıcısı (1924-2015)

Friedrich Ludwig "Fritz" Bauer, Alman bilgisayar bilimi öncüsü ve Münih Teknik Üniversitesi'nde profesördü.