Allegro Common Lisp

Allegro Common Lisp開発元|  Franz Inc.

|

初版|  1986年 (38年前) (1986)
最新版|

11.0 / 2024年1月9日 (9か月前) (2024-01-09)

対応OS|  Windows (32/64-bit), macOS (Intel, 32/64-bit), Linux (32/64-bit), FreeBSD (32-bit), Solaris (x64, SPARC; 32/64-bit), UNICOS, UTS
プラットフォーム|  IA-32, x86-64, ARM, 68000, SPARC, X-MP,
対応言語|  Lisp, Common Lisp
種別|  コンパイラおよびインタプリタと
公式サイト|  franz.com/products/allegro-common-lisp
テンプレートを表示

Allegro Common Lispは、米Franz社によるCommon Lispの処理系、及び統合開発環境(IDE)である。

ANSI Common Lisp規格に準拠した代表的な商用の処理系のひとつで、豊富な付属ライブラリと、多機能な開発環境、高性能なネイティブコードコンパイラを備える。

## 歴史

[編集]

1980年代中盤の米国Lisp市場は、Lispマシンを代表とするLisp向けハードウェアの専用マシンから汎用プロセッサによるワークステーションへと需要が切り替わりつつあったが[1]、Franz社は、汎用機であるVAX上で稼動するFranz Lispでシェアを伸ばしていた[2]。 1984年のCommon Lisp仕様の発表とほぼ同時期に、新興企業であるLucid社がワークステーション上のLisp環境として自社のLucid Common Lisp処理系をワークステーションのメーカーへOEM提供する戦略を取り、主要なワークステーションのメーカーのほぼ全てがLucid社のCommon Lispを採用するという事態になった[3]。 Franz社は事態を重く捉え自社のCommon Lispを新規に開発することを決定し、OEM先としてTektronixから契約を取り付け、1986年にTektronix 4400シリーズ用のCommon Lisp環境[4]として、Tek Common Lispがリリースされた[5]。

その後、Franz社は、Common Lisp処理系の稼動プラットフォームを拡大し、Extended Common Lisp (ExCL) という名称で販売した[6]が、バージョン3.0からAllegro Common Lispと名称を変更した[7]。

以降も、先進的な機能をCommon Lisp処理系に取り入れ、代表的な商用Common Lisp処理系として開発と提供が続いている[8]。

## 特徴

[編集]

* 高水準のMOPサポート(AMOP仕様をフルサポート[9])
* ネイティブスレッドとSMPマルチプロセッシング
* Unicodeサポート
* 他言語インターフェイス(C、Java)
* Common Lisp処理系と統合されたオブジェクトの永続化システム(AllegroCache)(10.1より組み込み機能[10])
* Common Graphicsを基盤とした、マルチプラットフォームのルック・アンド・フィールGUIの実現
* 単体実行ファイル、シェアードライブラリ生成機能と、不要機能削除機能(ツリー・シェーカー)

## アドオン

[編集]

* AllegroCache (10.1より組み込み[11])
* AllegroServe
* Allegro Prolog
* ELI (The Emacs-Lisp Interface)
* Flavors
* Allegro CL Runtime
* Allegro CLIM (CLIM 2.0)
* Allegro Composer (旧IDE)
* Allegro ODBC
* Allegro Presto (7.0以降サポートなし)
* DDE (Windows)
* OLE (Windows)
* jLinker
* Allegro Webactions
* AllegroStore (AllegroCacheの先行製品)

## 脚注

[編集]

1. ^ “Strategic Computing: Invisible Infrastructure p144.”. 2021年2月24日閲覧。
2. ^ “The Evolution of Lisp: 2.11 Other Stock Hardware Dialects: 1980-1984”. 2021年2月24日閲覧。
3. ^ “Patterns of software (Richard P. Gabriel): Part V. Into the Ground”. 2021年2月24日閲覧。
4. ^ “TEK COMMON LISP PROGRAMMING LANGUAGE”. 2021年2月24日閲覧。
5. ^ https://franz.com/about/company.history.lhtml
6. ^ “ACM SIGPLAN Lisp PointersDecember 1987: Programming environments: Extended Common Lisp”. 2021年2月24日閲覧。
7. ^ “ACM SIGPLAN Lisp Pointers July 1988: Programming environments: The Franz Inc. Allegro CL / GNU Emacs Interface”. 2021年2月24日閲覧。
8. ^ “Allegro CL 10.1”. 2021年1月26日閲覧。
9. ^ “A Survey of Current CLOS MOP Implementations”. 2021年2月24日閲覧。
10. ^ “Allegro CL 10.1: Persistency built in, not a database add-on”. 2017年7月17日閲覧。
11. ^ “Allegro CL 10.1: Persistency built in, not a database add-on”. 2017年7月17日閲覧。

* 表
* 話
* 編
* 歴

Common Lisp

実装|

* Allegro Common Lisp
* Armed Bear Common Lisp (ABCL)
* CLISP
* Clozure CL
* CMU Common Lisp (CMUCL)
* Corman Lisp
* Eclipse Common Lisp
* Embeddable Common Lisp (ECL)
* GNU Common Lisp (GCL)
* HiLISP
* Kyoto Common Lisp (KCL)
* LispWorks
* Macintosh Common Lisp (MCL)
* ManKai Common Lisp (MKCL)
* Mocl
* NIL
* NX-LISP
* Poplog
* Scieneer Common Lisp
* Spice Lisp
* Steel Bank Common Lisp (SBCL)
* Tachyon Common Lisp
* Symbolics Common Lisp
* VAX LISP

ソフトウェア|

| ライブラリ|

* Quicklisp Library Manager
* AllegroCache
* AllegroServe
* Another System Definition Facility (ASDF)
* Caveman2
* CLiki
* Common Lisp Interface Manager (CLIM)
* CLSQL
* CL-HTTP
* CLX
* Ironclad
* Weblocks

|

アプリケーション|

* ACL2
* Common Lisp Music
* Common Music Notation
* ICAD
* FriCAS
* Mirai
* Maxima
* OpenMusic
* StumpWM

総合開発環境|

* Allegro CL
* Clozure CL
* Hemlock
* LispWorks
* SLIME

出版物|

* Common Lisp the Language
* Paradigms of AI Programming
* The Art of the Metaobject Protocol
* On Lisp
* Practical Common Lisp
* Object-Oriented Programming in Common Lisp

設計委員会|

* X3J13
* ガイ・スティール・ジュニア

関連人物|

* Scott Fahlman
* Richard P. Gabriel
* Philip Greenspun
* David A. Moon
* Kent Pitman
* ガイ・スティール・ジュニア
* Daniel Weinreb

その他|

* Common Lisp Object System (CLOS)
* Common Lisp HyperSpec
* Greenspun's tenth rule

* 表
* 話
* 編
* 歴

LISP系言語

言語（処理系）|

* AutoLISP（英語版）
* Clojure
* Common Lisp
* Emacs Lisp
* Interlisp
* ISLISP（英語版）
* LFE（英語版）
* LISP
* LISPマシン
* Lush
* Maclisp
* Scheme
* GNU Guile
* MIT/GNU Scheme
* Gauche
* Chicken
* Kawa
* Racket
* SKILL
* Steel Bank Common Lisp

関連項目|

* S式
* SRFI
* ラムダ計算