このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1258320456/43
#  正多角形を表現するクラスPolygonを定義し,いくつかのインスタンスを生成して表示せよ.メソッドも実行して結果を示すこと. 
#   
#  ・辺の数と1辺の長さをアトリビュートとして持つ (コンストラクタは引数として辺の数と1辺の長さを取る)  
#  ・printすると次のように表示される  
#     [Polygon] 辺の数: 5, 辺の長さ: 100 
#  ・周囲の長さを返すメソッド(perimeter)を持つ (引数なし)  
#   
% ESP

class polygon has
    :create(Class,Obj,_辺の数,_辺の長さ) :-
        :new(Class,Obj),
        Obj!辺の数 := _辺の数,
        Obj!辺の長さ := _辺の長さ;

instance
    attribute 辺の数,辺の長さ;
    :perimeter(OBJ,_周囲の長さ) :-
        _周囲の長さ := OBJ!辺の長さ * OBJ!辺の数;
end.