私は Clojure プロジェクトに取り組んでおり、DSL 用の Clojure マクロを書いていることがよくありますが、会社が実際の仕事で Clojure をどのように使用しているかを示す Clojure ビデオを見ていました。 DSL では、マクロを使用して構文糖衣を少し追加するだけです。これは、標準関数を使用して DSL を記述し、最後にいくつかのマクロを追加する必要があるということですか?
更新: この質問に対するさまざまな (そして面白い) 回答を読んだ後、多くの理由から、答えが最初に考えたほど明確ではないことに気付きました。
アプリケーションにはさまざまな種類の API があります (内部、外部)
API のユーザーにはさまざまなタイプがあります (何かをすばやく実行したいだけのビジネス ユーザー、Clojure エキスパート)。
定型コードを隠すマクロはありますか?
私は離れて質問についてもっと深く考えますが、あなたの答えは私に多くの考えを与えてくれたのでありがとう. また、Paul Graham が Christophe のビデオとは反対のことを考えており、マクロはコードベースの大部分 (25%) であるべきだと考えていることにも気付きました。