ABC (程式語言)

ABC是一種指令式通用程式語言編程環境,最初由荷兰数学和计算机科学研究学会(CWI)的里奥·格茨(Leo Geurts)、兰伯特·梅尔滕斯史蒂文·彭伯顿开发。它是指令式、结构化的高级语言,意图用來取代BASICPascalAWK,它的设计目標是用于教學或建立原型,而非用作一种系统编程语言。

ABC
多范式指令式过程式结构化
設計者里奥·格茨(Leo Geurts)
兰伯特·梅尔滕斯
史蒂文·彭伯顿
實作者荷兰数学和计算机科学研究学会
1987年1月1987-01
型態系統强类型, 多态
操作系统类Unix, Windows, MacOS, Atari TOS
網站
啟發語言
SETL, ALGOL 68[1]
影響語言
Python

ABC語言对Python语言有着主要的影响,Python的创立者吉多·范罗苏姆在1982年至1986年间参与了ABC系统的设计与实现工作[2][3]

特征

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

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

完全的ABC系统包括了使用结构编辑器(语法导向编辑器)、提示、持久变量和多工作空间的编程环境,并可获得到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. . O'Reilly Media. April 2009: 32 [December 14, 2009]. ISBN 0-596-51517-0.
  2. Hamilton, Naomi. . Computerworld (IDG Communications). 2008-05-08 [2020-09-04]. (原始内容存档于2023-03-21). Being youthful at the time I figured I could design and implement a language "almost, but not quite, entirely unlike" ABC, improving upon ABC's deficiencies, and solve our support applications problem, so around Christmas 1989, I started hacking.
  3. Stewart, Bruce. . ONLamp.com. O’Reilly Media. 2002-06-04 [2020-09-04]. (原始内容存档于2013-03-13). I had been part of the ABC development team in the early ‘80s, and in my head I had analyzed some of the reasons it had failed.

參考文獻

外部連結

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.