ABC (programlama dili)

Vikipedi, özgür ansiklopedi
Gezinti kısmına atla Arama kısmına atla
ABC
Paradigması çok paradigmalı: zorunlu, procedural, structured
Tasarımcı Leo Geurts, Lambert Meertens, Steven Pemberton
Geliştirici CWI
Kararlı sürüm 1.05.02
Tip sistemi güçlü, polymorphic
Etkilendikleri SETL & ALGOL 68[1]
Etkiledikleri Python

ABC, Leo Geurts, Lambert Meertens ve Steven Pemberton tarafından CWI, Hollanda'da geliştirilen zorunlu bir genel amaçlı programlama dili ve programlama ortamıdır . Etkileşimli, yapılandırılmış, üst düzeydir ve BASIC, Pascal veya AWK yerine kullanılması amaçlanmıştır. Bir sistem programlama dili olmaktan ziyade, öğretme veya prototip oluşturma amaçlıdır.

ABC dilinin, ilerleyen yıllarda çok daha popüler olan Python programlama dilinin tasarımı üzerinde büyük etkisi bulunmaktadır. Python'u geliştiren Guido van Rossum, 1980'lerin ortalarında birkaç yıl boyunca ABC üzerine çalışmıştır.[2][3]

Özellikleri[değiştir | kaynağı değiştir]

Tasarımcıları ABC programlarının tipik olarak eşdeğer Pascal veya C programlarının dörtte biri kadar olduğunu ve daha okunabilir olduğunu iddia etmektedir,. Temel özellikler:

  • Sadece beş temel veri türü .
  • Değişken bildirimleri gerektirmez.
  • Yukarıdan aşağıya programlama için açık destek.
  • İfade yerleştirme, kenar dışı kural yoluyla girintiyle belirtilir.
  • Sonsuz hassasiyetli aritmetik, sınırsız boyutlu listeler ve dizeler ve ortogonallik ve acemiler tarafından kullanım kolaylığını destekleyen diğer özellikler.

ABC aslen monolitik bir uygulamadır; bu durum grafik kullanıcı arabirimi gibi yeni gereksinimlere uyum sağlayamamasına yol açmıştır. ABC, bilgisayarın dosya sistemine ve işletim sistemine doğrudan erişemez.

Tam ABC sistemi, sözdizimine yönelik düzenleme, öneriler, kalıcı değişkenler ve birden çok çalışma alanı içeren bir programlama ortamı içerir ve şu anda 1.05.02 sürümünde olan ve Unix, DOS, Atari ve Apple Macintosh'ta bir yorumlayıcı / derleyici olarak kullanılabilir.

Örnek[değiştir | kaynağı değiştir]

Bir belgedeki tüm words (kelimeler) kümesini toplamak için örnek bir işlev:

HOW TO RETURN words document:
   PUT {} IN collection
   FOR line IN document:
      FOR word IN split line:
         IF word not.in collection:
            INSERT word IN collection
   RETURN collection

Kaynakça[değiştir | kaynağı değiştir]

  1. ^ "He was clearly influenced by ALGOL 68's philosophy of providing constructs that can be combined in many different ways to produce all sorts of different data structures or ways of structuring a program." - Guido van Rossum Federico Biancuzzi; Shane Warden (Nisan 2009). Masterminds of Programming: Conversations with the Creators of Major Programming Languages. O'Reilly Media. s. 32. ISBN 0-596-51517-0. Erişim tarihi: 14 Aralık 2009. 
  2. ^ The A-Z of Programming Languages: Python 2008-12-29 tarihinde Wayback Machine sitesinde arşivlendi.. "...I figured I could design and implement a language 'almost, but not quite, entirely unlike' ABC, improving upon ABC's deficiencies...", Computerworld (2008-08-05). Retrieved on 2014-07-08.
  3. ^ An Interview with Guido van Rossum. "... in my head I had analyzed some of the reasons it had failed..." ONLamp.com. Retrieved on 2013-07-08. archived copy

Dış bağlantılar[değiştir | kaynağı değiştir]

Kitaplar[değiştir | kaynağı değiştir]