ABC (プログラミング言語)

提供: miniwiki
移動先:案内検索
ABC
パラダイム マルチパラダイム: 命令型, 手続き型, 構造化
設計者 Leo Geurts, Lambert Meertens, Steven Pemberton
開発者 CWI(オランダ国立情報工学・数学研究所)
最新リリース 1.05.02
型付け 強い型付け
影響を与えた言語 Python
テンプレートを表示

ABC は、オランダのCWI(Centrum Wiskunde & Informatica[1])で開発された命令型汎用プログラミング言語およびその統合開発環境である。主な開発者は、Leo Geurts, Lambert Meertens, Steven Pemberton。対話型で構造化された高級言語であり、習得と利用が容易にできるように、またBASIC, Pascal, AWKなどの代替となることを意図して設計された。システムの記述用というよりは、プログラミング教育用やプロトタイピングでの利用に焦点を当てて設計されている。ABCは、Pythonの設計に強い影響を与えた。

概要

ABCの基本データ型は5種類しかない。変数の宣言は不要である。トップダウン・プログラミングを明確にサポートしている。ブロックの階層(入れ子)は字下げで示される。初心者にも扱いやすいようデータ型の制限が希薄になっており、多倍長整数だけでなく、無限長のリストや無限長の文字列が可能である。設計者によれば、ABCで書かれたプログラムは同等の内容のPascalやC言語のプログラムの4分の1程度の長さであり、可読性が高い。

もともとのABCはモノリシックな実装であったため、グラフィカルユーザインタフェースの生成といった新たな要求に応えることが不可能である。ABC はオペレーティングシステムファイルシステムに直接アクセスできなかった。

ABCには専用のプログラミング環境があり、構文を意識した編集や示唆、変数の保持、複数のワークスペースなどの機能がある。

ABCにはインタプリタコンパイラがあり、現在のバージョンは 1.05.02 である。ABC はUNIXDOSAtariMacintoshに移植されている。

ABCはPythonの設計に重大な影響を与えた。Python を開発したグイド・ヴァンロッサムは1980年代初期に ABC システム開発に数年間参加していた[1]

文書中の全ての単語を抜き出す 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. 直訳すると、数学&情報学センター、であるが、日本語の「情報学」と比べオランダ語informaticaは英語圏のcomputer science(コンピュータ科学)に近く、また同センターは蘭国立であることもあり英称では National Research Institute を付けている。いずれにしろ、重訳を重ねれば重ねるほど誤解の原因にしかならず、そもそも固有名詞であるから勝手に訳すのは間違いでしかない。

関連項目

参考文献

この記事は2008年11月1日までGFDLバージョン1.3以降の再ライセンス規約に基づいていたFree On-line Dictionary of Computingにある項目の資料が元になっている。

外部リンク