6

「プログラミングClojure」を読んでいて、マクロをできるだけ広範囲に作成する方法を説明している本に興味があります。

このための本を提案しますか?

ありがとう。

4

5 に答える 5

8

Lispマクロに関する典型的な本は、おそらくPaulGrahamのOnLispです。Common Lispを使用していましたが、Clojureはいくつかのレベルで異なりますが、実際にマクロを見たい場合はそれほど重要ではありません。(そもそもClojureはLisp-1です。)

于 2010-08-26T01:51:34.927 に答える
5

どちらもCommonLispを対象としていますが、このための2つの優れた本は、PaulGrahamによるOnLisp(彼のWebサイトでオンラインで無料で入手できる完全な本)とDougHoyteによるLetOverLambdaです。

2つのOnLispのうち、よりアクセスしやすくなっています。ClojureマクロはSchemeの衛生的なマクロに似たIIRCですが、それでもほぼ確実にそこから何かを学ぶことができます。

于 2010-08-26T01:50:15.210 に答える
4

「PracticalCommonLisp」という本は、Lispマクロを非常に明確に説明しています。Clojureのマクロは、Common Lispのマクロと十分に類似しているため、学習した内容のほとんどすべてが引き継がれます。「LetOverLambda」は、楽しく、面白く、創造的な作品ですが、Lispマクロの使用方法は、最も真面目で経験豊富な実用的なLispプログラマーが使用する方法とは大きく異なります。「アナモルフィック」マクロ(特定の変数名を「知っている」)の使用はお勧めしません。

于 2010-08-30T02:49:31.317 に答える
4

ManningのEarlyAccessProgramから入手できるMichaelFogusの次の本TheJoyof Clojureには、マクロに関する優れた章があります。これは、関数型プログラミングの背後にある考え方と、Clojureの機能(最新の1.2の変更を含む)がどのように実装されているのかを説明する優れた本です。

マクロの章では、Clojureでのマクロの次のユースケース、それらの実装方法、およびマクロの処理方法について説明します。


フォームを組み合わせた制御構造の定義フォームの
変更フォームを
返すフォームの
制御シンボリック解決時間
管理リソース

于 2010-08-31T09:22:54.020 に答える
0

これは正確には汎用のマクロ作成本ではありませんが、AMOPは、ライブラリ/フレームワークの「ビュー」レイヤーとしてマクロを使用する方法を示しています。

(うーん、私はこれを説明するのにあまり良い仕事をしていません。AMOPは一種の分類に反する本です!)

于 2010-08-26T14:20:21.177 に答える