- 前説
- 要旨:プログラミングの大部分は言語の拡張である。CLのマクロは、関数、オブジェクトに並ぶ第三の拡張方法である。
- 要旨:プログラミングの大部分は言語の拡張である。CLのマクロは、関数、オブジェクトに並ぶ第三の拡張方法である。
- 7.1 WHENとUNLESS
- 要旨:マクロ機構が言語に組込まれているので、DSLを手軽に書ける。
- 要旨:マクロ機構が言語に組込まれているので、DSLを手軽に書ける。
- 7.2 COND
- 要旨:CONDの紹介。
- 要旨:CONDの紹介。
- 7.3 ANDとORとNOT
- 要旨:ANDとORとNOTの紹介。(NOTは関数)
- 要旨:ANDとORとNOTの紹介。(NOTは関数)
- 7.4 繰り返し
- 要旨:CLにおける繰り返し機構は階層をなしている。下から言うと、tagbodyとgo -> do -> dolist,dotimes,.. という系列と、loopがある。loopは英語のように繰り返しを書く機構。
- 要旨:CLにおける繰り返し機構は階層をなしている。下から言うと、tagbodyとgo -> do -> dolist,dotimes,.. という系列と、loopがある。loopは英語のように繰り返しを書く機構。
- 7.5 DOLISTとDOTIMES
- 要旨:DOLISTとDOTIMESの紹介。
- 要旨:DOLISTとDOTIMESの紹介。
- 7.6 DO
- 要旨:DOの紹介。
- 要旨:DOの紹介。
- 7.7 強力なLOOP
- 感想:「LOOPを悪く言う人たちは、そのシンタックスがちっともLispっぽくない(つまり、括弧が足りない)と主張している」これは少なくともPGとNorvigについてはあてはまらない。彼らはどちらかというとLOOP否定派だが、その理由は、「拡張LOOPはANSI仕様において、またそれ以外のところにおいても、十分な構文定義が存在しない。そして実際、解釈が不定な表現も書けてしまう」ということがひとつ。あとは、「拡張loop構文は複数節の組み合わせという構造をもっているが、それをなす各節を拡張LOOP構文以外のところで再利用できないつくりはよろしくない」ということだったような。
- 感想:私個人としては、プロトタイピングとかに有効につかって、固くするときにdoとかに書き換えればいいんじゃない、と考えている。
- 要旨:賛否は別にして、こんなものもできちゃうのがマクロのパワーだ。
- 感想:「LOOPを悪く言う人たちは、そのシンタックスがちっともLispっぽくない(つまり、括弧が足りない)と主張している」これは少なくともPGとNorvigについてはあてはまらない。彼らはどちらかというとLOOP否定派だが、その理由は、「拡張LOOPはANSI仕様において、またそれ以外のところにおいても、十分な構文定義が存在しない。そして実際、解釈が不定な表現も書けてしまう」ということがひとつ。あとは、「拡張loop構文は複数節の組み合わせという構造をもっているが、それをなす各節を拡張LOOP構文以外のところで再利用できないつくりはよろしくない」ということだったような。
こつこつ。
0 件のコメント:
コメントを投稿