インタープリタ デザインパターンと LISP の論理的な関係。
デザインパターンの各解説書でインタープリタ デザインパターンのメタファとして「文法表現」を与えていますが、 そのインタープリタ デザインパターンに対し LISP の概念との対応を与えることができます。 インタープリタ デザインパターンと LISP との論理的な関係を以下に示します。
LISP の概念による説明インタープリタ デザインパターンの概念による説明
静的な型が付けられたS式(多くの LISP 実装は静的型を持たないためこのように表現しました)Expression 役
副作用Context 役インスタンスへの作用
c言語や機械語で実装された関数の実装Expression 役を実装したクラスの interpret メソッド
関数Expression 役を実装したクラス
LISP 文インスタンスのコンポジット
nilヌルオブジェクト
マクロコンポジットを生成する処理
LISPとの相似性により、インタープリタ デザインパターンは手続き型言語の中で関数型言語を扱うためのパターンであるということができます。
トップに戻る
Copyright (C) 2006 Takahiro Nakamura. All rights reserved.