プリントp.Ⅴ-6 問5.4.2
参考: 問5.4.1の解答例
?- append([1,2], [3,4], X).
これに対して、
append([H1|X1],
Y1, [H1|Z1]):-
append(X1, Y1, Z1).
が、
H1=1,
X1=[2], Y1=[3,4], X=[1|Z1]
で適用できる。
?- append([2], [3,4], Z1).
これに対して、
append([H2|X2],
Y2, [H2|Z2]) :-
append(X2, Y2, Z2).
が、
H2=2,
X2=[], Y2=[3,4], Z1=[2|Z2]
で適用できる。
?- append([], [3,4], Z2).
これに対して、
append([],
Y3, Y3).
が、
Y3=[3,4], Z2=[3,4]
で適用できて、ゴール節が消える。
まとめると、 X = [1|[2|[3,4]]] (= [1,2,3,4])
プリントp.Ⅶ-6 問7.4.1
このHTMLファイルを元にして下さい。
一般的に使われているオブジェクト指向言語(WikiPediaのページなどを参考にすること)から1つ言語を選び(ただし Javaは除く)、 動的束縛・継承を使用しているプログラム例を作成せよ。 (継承の概念がない場合は、それに代わる特徴を使用せよ。)
3. で調べた言語に他の言語にはみられない特有の特徴があれば、それを利用したプログラム例を作成せよ。