エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
Scheme手習い (2) 初めての再帰 - kb84tkhrのブログ
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Scheme手習い (2) 初めての再帰 - kb84tkhrのブログ
第2章「一度、もう一度、さらにもう一度、またもう一度、……」ではラットの再帰を学びます ラット(lat)は... 第2章「一度、もう一度、さらにもう一度、またもう一度、……」ではラットの再帰を学びます ラット(lat)はこの本だけの用語で、アトムだけが並んだリストのことです List of ATomsのことだと思われます 引数がラットであるかどうかを判定する関数lat?です (define lat? (lambda (l) (cond ((null? l) #t) ((atom? (car l)) (lat? (cdr l))) (else #f)))) この関数に引数として(bacon and eggs)を与えてやったときの動きを1行ずつ じっくりと追いかけていきます こんな感じです 一部略してます (lat? l)の最初の質問は何ですか。 (null? l)です。(略) 次のcond行 ( (null? l) #t) の意味は何ですか。 (null? l)は引数lが食うリストかどうか質問します。(