はじめてのClojure , first rest cons のテストとループ(再帰)
リスト操作の基本 first , rest ,cons のテストコード。
ループに挑戦
今度はリストから順に出力するにはどうかけばよいか。
もっと簡単なイディオムがありそうだが、とりあえず機能した。
zero?という関数があるのでそれを使えば以下のようにかける。
;
; ループのテスト
;
;(defn list-size-not-zero?
; "リストのサイズが0より大きいですか"
; [list]
; ( < 0 (count list) )
;)
(defn myloop
"最初の要素から順にプリント"
[list]
( println (first list) )
( when-not (zero? (count (rest list))) ( myloop ( rest list ) ) )
)
(def mylist '(1,2,3,4,5,))
( myloop mylist )