ABC (程式語言)

ABC,是一種指令式通用程式語言編程環境,最初由荷兰数学和计算机科学研究学会的Leo Geurts、Lambert Meertens與Steven Pemberton开发。它是指令式、结构化的高级语言,意图用來取代BASICPascalAWK,它的设计目標是用于教學或建立原型,而非用作一种系统编程语言。

ABC
编程范型多范式指令式过程式结构化
設計者Leo Geurts, Lambert Meertens英语Lambert Meertens, Steven Pemberton英语Steven Pemberton
實作者荷兰数学和计算机科学研究学会
发行时间1987年1月,​34年前​(1987-01
穩定版本
1.05.02
(1990年,​31年前​(1990
型態系統强类型, 多态
作業系統类Unix, Windows, MacOS, Atari TOS英语Atari TOS
網站homepages.cwi.nl/~steven/abc/ 編輯維基數據鏈接
啟發語言
SETL, ALGOL 68[1]
影響語言
Python

ABC語言对Python语言有着主要的影响,Python的创立者Guido van Rossum在1980年代中期曾为ABC系统工作了很多年[2][3]

特征编辑

ABC的设计者声称,典型的ABC程序的大小只是等价的Pascal或C程序的四分之一,并且更加具有可读性。它的关键特征包括:

ABC最初是一个单体实现,导致它不能适配新的需求,比如建立图形用户界面。ABC不能直接访问底层文件系统和操作系统。

完全的ABC系统包括了使用结构编辑器英语Structure editor(语法导向编辑器)、提示、持久变量和多工作空间的编程环境,并可获得到ABC的解释器/编译器,其当前版本是1.05.02,它已经移植到了UnixDOSAtariApple Macintosh

例子编辑

一个函数words,它在文档中收集出所有单词的集合:

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

引用编辑

  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. Masterminds of Programming: Conversations with the Creators of Major Programming Languages. O'Reilly Media. April 2009: 32 [December 14, 2009]. ISBN 0-596-51517-0. 
  2. ^ The A-Z of Programming Languages: Python页面存档备份,存于互联网档案馆). "...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.

本條目部分或全部内容出自以GFDL授權發佈的《自由線上電腦詞典》(FOLDOC)。

外部連結编辑