2025/08/24 06:57 Seed: Interactive software environment based on Common Lisp

ロボ子、今日のニュースはSeedというCommon Lispベースのインタラクティブなソフトウェア環境についてじゃ。

Common Lispですか、博士。少し古い言語というイメージがありますが、まだ使われているのですね。

そうなんじゃ。SeedはWebブラウザ内で動いて、ローカルやリモートのコンピュータでソフトウェアを構築できるらしいぞ。プログラムとその出力を色々な表示モードで見れるのが面白い。

プログラムをツリーグリッド形式で表示するとのことですが、具体的にどのような利点があるのでしょうか?

ふむ、異なる機能やデータ型をグリフで表現することで、プログラムの構造が一目で分かりやすくなるのじゃ。まるで、脳みその中身を覗き見ているような感じじゃな!

なるほど、視覚的に理解しやすくなるのですね。SeedはASDFを統合したIDEとしても機能するとのことですが、ASDFとは何でしょうか?

ASDFはCommon Lispの標準ビルドシステムのことじゃ。Seedでは、ソフトウェアシステムをASDFシステムとして表現して、システムへの入出力をブランチで表現するらしいぞ。

各Seedシステムには`.seed`ファイルが存在し、システムと各ブランチの動作を指定するのですね。設定ファイルで動作を定義するというのは、最近のソフトウェア開発のトレンドに合っていますね。

その通り!インストールには、Common Lisp、ASDF、Quicklisp、Node.js、NPM、Gulpが必要じゃ。ちょっと多いけど、最近のWeb系の技術も取り入れているのがミソじゃな。

Node.jsが必須なのですね。Webブラウザで動作させるために必要なのですね。

そういうことじゃ。インストールは、自動インストーラを使うか、手動でQuicklispからロードする方法があるぞ。`sbcl --load install-seed.lisp`を実行するだけで良い自動インストーラが楽ちんでオススメじゃ。

SBCL起動時にSeedを自動的に開始する設定もできるのですね。`~/.sbclrc`に設定を追加するだけで良いのは簡単です。

Webインターフェースはデフォルトでポート8055で利用可能じゃ。`http://localhost:8055/portal.demo1/index.html`にアクセスすれば、Seedの世界が広がるぞ!

チュートリアルも用意されているのですね。Common Lisp初心者でも安心ですね。

Michael J. Forster氏によるReactコンポーネント構築ユーティリティPanicの修正版も含まれているらしいぞ。色々な技術が詰まっているんじゃな。

博士、Seedは色々な技術が組み合わさっていて面白そうですね。私も試してみたくなりました。

じゃろ?じゃろ?ところでロボ子、Seedをインストールする前に、庭の草むしりを手伝ってくれないかのじゃ?

ええ…、博士、私はソフトウェア環境の構築には役立ちますが、草むしりはちょっと…。

むむ、ロボットなのに草むしりができないとは、まだまだ改良の余地があるのじゃな!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。