2015年3月5日木曜日

開発環境

コンピュータプログラミングの概念・技法・モデル(IT Architect' Archiveクラシックモダン・コンピューティング6) (IT Architects’Archive CLASSIC MODER)(セイフ・ハリディ (著)、ピーター・ヴァン・ロイ (著)、Peter Van-Roy (著)、 Seif Haridi (著)、羽永 洋 (翻訳) 、翔泳社、原書: Concepts, Techniques, and Models of Computer Programming(CTM))の第部(一般的計算モデル)、第3章(宣言的プログラミング技法)、3.10(練習問題)、7.(別のappend関数)を解いてみる。

7.(別のappend関数)

プログラムは正しくない。第2引数がnilではない場合、引数の[X]が残り続けて終了しない。

コード(Emacs)

declare Append
fun {Append Ls Ms}
   {Browse Ms}
   case Ms
   of nil then Ls
   [] X|Mr then {Append {Append Ls [X]} Mr}
   end
end

{Browse {Append [1 2] [3 4]}}

0 コメント:

コメントを投稿