Answering my own question. :-D 2015-02-20 11:01 GMT+01:00 Cecil Westerhof <cldwester...@gmail.com>:
> I have a function to check the parameters of another function: > (defn params-correct-lucky-numbers > [upto] > (let [max (* 10 1000 1000)] > (if (< upto 1) > (do > (println "The parameter upto should at least be 1") > false) > (if (> upto max) > (do > (printf "The parameter upto should be below %d\n" (inc > max)) > false) > true)))) > > I am used to something like: > Boolean params-correct-lucky-numbers(int upto) { > final int MAX = 10_000_000; > > if (upto < 1) { > System.out.println("The parameter upto should at least be > 1"); > return false; > } > if (upto > MAX) { > System.out.printf("The parameter upto should be below > %d\n", MAX + 1); > return false; > } > return true; > } > > Personally I find this clearer. In this case it is not a big deal, but > when you have to check 20 parameters … > > Could the Clojure function be rewritten into something resembling the Java > function? (In a functional way of-course.) > I stumbled on cond, so it becomes: (defn params-correct-lucky-numbers [upto] (let [max (* 10 1000 1000)] (cond (< upto 1) (do (println "The parameter upto should at least be 1") false) (> upto max) (do (printf "The parameter upto should be below %d\n" (inc max)) false) :else true))) -- Cecil Westerhof -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.