勉強会

今日も宜野湾マクドで実施。

  • +inf.0 とか -inf.0 とか知らんかった件
  • '() がリストである事について云々

'() がリストである件については R5RS 見てみたら以下な記述がありました。

ペアはまずリストを表現するために使われる。リストは, 空リスト (the empty list), または cdr 部がリストであるようなペア, として再帰的に定義できる。

なので '() はリストなんだな、と。

あと

reverse な実装の問題の検証で Gauche な実装は? みたいな話になってたんですが、それを scheme で書いたのが以下なのかな。

(define (myrev l)
  (let f ((result (cons '() '())) (l l))
    (cond ((null? l)
	   (cdr result))
	  (else
	   (set-car! result (car l))
	   (f (cons '() result)
	      (cdr l))))))

なんとなく正確ではない気もしてますが。

それにしても

日中 objc のメモリリークなソレで一杯な頭から切り替えるのに時間がかかるわ、脳の持久力は無いわでついていくのに必死というか、最後は帰ろうぜ、というオーラを出しまくるわしを無理矢理引っ張る若い衆、ってカンジで申し訳ない限りッス。
ちなみに今日は p.52 から p.59 までの練習問題の検証 (?) でした。スピード早杉。問題 2.7 から 2.16 までのシリーズは理屈が分かってると最後のナニが面白そうな事が分かりました。どんどん濃くなっていくので、なるべく置いてかれないようにせねば。