ABC (プログラミング言語)
パラダイム | マルチパラダイム: 命令型, 手続き型, 構造化 |
---|---|
設計者 | Leo Geurts, Lambert Meertens, Steven Pemberton |
開発者 | CWI(オランダ国立情報工学・数学研究所) |
最新リリース | 1.05.02 |
型付け | 強い型付け |
影響を与えた言語 | Python |
ABC は、オランダのCWI(Centrum Wiskunde & Informatica)で開発された命令型汎用プログラミング言語およびその統合開発環境である。主な開発者は、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 はUNIX、DOS、Atari、Macintoshに移植されている。
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
関連項目
[編集]参考文献
[編集]この記事は2008年11月1日以前にFree On-line Dictionary of Computingから取得した項目の資料を元に、GFDL バージョン1.3以降の「RELICENSING」(再ライセンス) 条件に基づいて組み込まれている。