2010-05-20

関数論理プログラミング

last xs | zs++[e] =:= xs

 = e

 where zs,e free

うーん、とっても不思議コードだー。

Schemeだったら

(define (last xs)

 (if (null? (cdr xs))

  (car xs)

  (last (cdr xs))))

みたいに関数呼び出しがあるコードになるのにー。

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん