Функциональная композиция в запросе Datomic
Я передаю фактический символ для функции в качестве аргумента в запрос Datomic. Это не рекомендуется? Вы бы предложили вместо этого генерировать весь запрос динамически (пример поможет)?
(d/q '[:find ?effect-o
:in $ % ?pred-fn
:where
[_ :my/effect_o ?effect-o]
[(db.utilities/binary_sentiment ?pred-fn ?effect-o)]]
(get_db) ALL_RULES pred_fn)
(defn binary_sentiment [binary_pred_fn score]
(binary_pred_fn score)
)
1 ответ
Решение
Хороший трюк. Семантика четко определена, поэтому у вас не должно быть проблем с этим.