タイトルはそれほど素晴らしいものではありませんが、良いワンライナーを見つけるのは難しいです:)
質問は以下です。宣言を考えると:
(def mystruct (create-struct :a :b :c))
次の方法でインスタンスを構築することは可能ですか (明らかに似たようなものです):
(struct-map mystruct :a 1 :b 2 :c (inc (:b this)))
私は次の奇妙な方法でこのようなものを得ることができました:
(def mystructinst (struct-map mystruct :a 1 :b 2 :c (inc (:b mystructinst))))
しかし、正直なところ、なぜそれが機能したのかわかりません。mystructinst は、含まれているフォームの評価後にのみバインドされると思いました。これは、このタスクを実行するクリーンな方法ですか? より良いものはありますか?
お時間をいただきありがとうございます。