- ABC (programming language)
Infobox programming language
name = ABC
paradigm = multi-paradigm: imperative, procedural, structured
year =
designer =Leo Geurts ,Lambert Meertens ,Steven Pemberton
developer = CWI
latest release version = 1.05.02
latest release date =
typing = strong
implementations =
dialects =
influenced_by =SETL
influenced = PythonABC is an imperative general-purpose
programming language and programming environment developed at CWI,Netherlands byLeo Geurts ,Lambert Meertens , andSteven Pemberton . It is interactive, structured, high-level, and intended to be used instead of BASIC, Pascal, or AWK. It is not meant to be a systems-programming language but is intended for teaching or prototyping.ABC has only five basic
datatype s. It does not require variable declarations. It has explicit support for top-down programming. Statement nesting is indicated byindentation . It providesinfinite precision arithmetic , unlimited sized lists and strings, and other features supporting orthogonality and ease of use by novices. Its designers claim that ABC programs are typically around a quarter the size of the equivalent Pascal or C programs, and more readable.ABC was originally a monolithic implementation, leading to an inability to adapt to new requirements, such as creating a
Graphical User Interface . ABC could not directly access the underlying file system and operating system.ABC includes a programming environment with syntax-directed editing, suggestions, persistent variables, and multiple workspaces.
ABC is available as an interpreter/
compiler , currently at version 1.05.02. ABC has been ported toUnix ,DOS ,Atari , andApple Macintosh .ABC also had a major influence on the design of the Python programming language;
Guido van Rossum , who developed Python, previously worked for several years on the ABC system in the early 1980s [http://www.computerworld.com.au/index.php/id;66665771] [http://www.onlamp.com/lpt/a/2431] .Example
An example function words to collect the set of all words in a document:
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
References
ee also
*
Off-side rule External links
* [http://www.cwi.nl/~steven/abc/ A Short Introduction to the ABC Language]
Books
* [http://idhub.com/abc/ ABC Programmer's Handbook]
Wikimedia Foundation. 2010.