ABC (programlama dili)
Paradigması | çok paradigmalı: zorunlu, procedural, structured |
---|---|
Tasarımcı | Leo Geurts, Lambert Meertens, Steven Pemberton |
Geliştirici | CWI |
Kararlı sürüm | 1.05.02 |
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
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
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
- ^ "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 RossumFederico 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.
- ^ The A-Z of Programming Languages: Python 29 Aralık 2008 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.
- ^ An Interview with Guido van Rossum 13 Mart 2013 tarihinde Wayback Machine sitesinde arşivlendi.. "... in my head I had analyzed some of the reasons it had failed..." ONLamp.com. Retrieved on 2013-07-08.
Dış bağlantılar
- ABC Diline Kısa Bir Giriş14 Temmuz 2017 tarihinde Wayback Machine sitesinde arşivlendi.
Kitaplar
- ABC Programcı El Kitabı6 Mayıs 2019 tarihinde Wayback Machine sitesinde arşivlendi.