Portable Standard Lisp ( PSL ) は、Lisp言語の方言であるプログラミング言語です。PSL は、前身であるStandard LispとPortable Lisp Compilerに触発されて開発されました。末尾再帰、遅延バインディング(または動的バインディング) であり、 1980 年にユタ大学の研究者によって開発され、PSL 3.1 がリリースされました。1982 年に開発はHewlett-Packardの開発者に引き継がれ、PSL 3.3 以降がリリースされました。[ 1 ] Portable Standard Lisp は、 Motorola 68000 シリーズ、DECSYSTEM-20、Cray-1、VAXなど、いくつかのハードウェアおよびオペレーティングシステムのコンピューティング プラットフォーム用のスクリーン エディタ、コンパイラ、およびインタプリタを含むキットとして利用可能でした。現在、PSL は主にKonrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB)によって開発され、そこから入手できます。現代における主な用途は、 Reduceの実装における基盤言語として使用されることです。
ほとんどの古い Lisp と同様に、PSL は最初のステップで Lisp コードを LAP コードにコンパイルします。LAP は別のクロス プラットフォーム言語です。ただし、古い Lisp は主に LAP を直接アセンブリ言語またはアーキテクチャに依存する中間言語にコンパイルしていましたが、PSL は LAP をCコードにコンパイルします。C コードでは仮想マシン言語で実行できます。そのため、PSL で書かれたプログラムは、原則として移植性の高い C と同じくらい移植可能です。コンパイラは、PSL またはSystem LispまたはSYSLISPと呼ばれるより原始的な方言で書かれており、「アセンブリ言語や他のシステム言語で手書きしたコードはごくわずかで、本番環境レベルの Lisp を Lisp 自体で可能な限り記述するという実験」として開発されました。[ 1 ]そのため、システム全体が自己起動でき、コンパイラの改良によってコンパイラ自体も改良されました。後のリリースにはCommon Lispとの互換性パッケージが含まれていましたが、これは最新バージョンではサポートされていません。
ポータブル標準Lispは、 Common Lispなどの他のLispに比べて機能が少なく、使いづらいと感じる人もいました。リチャード・P・ガブリエルは、彼の人気エッセイ「Lisp: Good News, Bad News, How to Win Big」[ 2 ]の中で、「3番目に標準的なLispはポータブル標準Lispで、多くのマシンで動作しましたが、使いたいと思う人はほとんどいませんでした」と書いています。