Question

Is there a difference, performance or otherwise, between using a deffilterop and using a purse clojure function?

http://nathanmarz.com/blog/introducing-cascalog-a-clojure-based-query-language-for-hado.html mentions that filtering can be done with clojure functions like (< ?age2 ?age1) however looking at https://github.com/nathanmarz/cascalog/wiki/Guide-to-custom-operations it looks like you can define a function like (deffilterop is-2? [x] (= x 2)).

So my question is, is there any difference between these two approaches and if not which is the preferred syntax?

Note: It also looks like all of the defxxxop functions are being deprecated for defxxxfn instead. https://github.com/nathanmarz/cascalog/blob/develop/cascalog-core/src/clj/cascalog/logic/def.clj#L131

Was it helpful?

Solution

Turns out there is no difference from a performance perspective. The deffilterop is useful for making a parameterized function.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top