エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
defn- のような def- を定義したけど、 private にならないという話 - (define -ayalog '())
記事へのコメント0件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
defn- のような def- を定義したけど、 private にならないという話 - (define -ayalog '())
ML で読んでほえーと思った。 Why (defn- ...) but (def ^:private? ...) 元の質問者は def フォームは ... ML で読んでほえーと思った。 Why (defn- ...) but (def ^:private? ...) 元の質問者は def フォームは ^:dynamic? になるの?って聞いてますが、何故かというと彼の書いたマクロ def- が綺麗に動かなかったからです。 こういう感じ。 (defmacro def- "Why (defn- private-fn ...) but (def ^:private var ...)?" [sym & body] `(def ^:private ~sym ~@body)) (macroexpand '(def- blah "foo bar quux")) ;=> (def blah "foo bar quux") という風にマクロ展開すると ^:private が消えちゃってますね。ちなみにこれ定義後に meta 情報を見ても同様に private