Hemlock

Hemlockとは



Hemlockは、Unixシステムに準拠したPOSIX対応のテキストエディタで、Emacs系に属している自由ソフトウェアです。このエディタは、Lispマシン向けのZWEIエディタや、その後のITS/TOPS-20用Emacsのバージョンの流れを受け継いでいます。特筆すべき点は、HemlockがEmacs LispとC言語の組み合わせで作られた他のEmacs系エディタ(たとえばXEmacsやGNU Emacs)とは異なり、Common Lispで実装されているということです。

歴史と概要



Hemlockの開発は、初めにPERQコンピュータ用としてSpice Lisp(現在のCMU Common Lispの一部)で行われました。その後、CMU Common Lispの開発環境として統合される形で、コンパイラとインタプリタと共に利用されています。また、Hemlockは独立したエディタとしても使用できる柔軟性を持っています。

CMU Common Lispという環境では、GNU Emacsとの連携も可能ですが、Hemlockではより密に統合された機能が提供されています。ただし、エディタの拡張性や編集機能については、GNU Emacsに比べて若干の制約があります。

ユーザーインターフェース



Hemlockの特徴の一つは、Lispの関数名と対話コマンド名を明確に分離している点です。このスタイルは、MIT系のLispマシンで使用されていたZmacsやTECO Emacsを受け継ぎ、自然言語に近い操作性を実現しています。また、ターミナル表示やCLXライブラリを用いたX11環境における表示機能も備えており、多様なユーザー環境に対応しています。

派生エディタ



Hemlockは多くの派生エディタに影響を与えており、例えばClozure CLのmacOS版の開発環境には、Cocoa上で動作するHemlockのコードをベースにしたエディタがあります。また、LispWorksのエディタは、Hemlockの初期バージョンを元にしており、WindowsやmacOS、X11/Motif、Gtk+のようなマルチプラットフォームでも稼働します。さらに、Liquid Common Lispでも利用可能です。

Lucid Common Lispが提供していたHelixエディタもHemlockを基にしています。加えて、Portable Hemlockというプロジェクトがあり、これは様々なCommon Lisp環境で動作するポータブルなHemlockの実装です。これにより、Hemlockは多岐にわたるプラットフォームで利用されることが可能になっています。

結論



Hemlockは、その独自の実装と機能によって、特にLispプログラミングに特化したテキストエディタとして高い評価を得ています。Emacs系のエディタが持つ多様性と機能性を保持しつつ、Common Lispに焦点を当てた設計は、多くの開発者にとって魅力的な選択肢となることでしょう。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。