Schemeで何を書こうか

Schemeを習得するために本を読んだりネットの解説ページ見たりしてるんだけど、こんなので本当に使い物になるプログラムが書けるのか疑問だ。

しかし、構文とかばっかしやっててもつまらないので、何かゲームでも作りながら覚えたい。。
出来るだけシンプルなものがいいのでポーカーでも書いてみよう。

しょぼいけどカードを配る部分。
named letの理解は、まだちょっと怪しい。。

(use srfi-27) ; ランダムを使う

; リストにカードを加える
(define add-card
  (lambda (ls)
    (cons
     (+ 1 (random-integer 13))
     ls)))

; 五枚組みのカードを配る
(define deal-card
  (lambda ()
    (let loop((cards '()))
      (if (= 5 (length cards))
	  cards
	  (let ((c (add-card cards)))
	    (loop c))))))

Emacsキーバインドにはまだ慣れないせいで、書くのが遅くなってしまう。