I wonder if you can do something clever with class-loaders to prevent side-effects when testing functions...
On 7 September 2013 20:16, Islon Scherer <islonsche...@gmail.com> wrote: >> I wonder if it would be possible to improve it using the core.typed >> library and doing some kind of static analysis similar to Haskell's Hoogle >> to filter out candidates. > > The problem is most Clojure functions don't use core.type nor are type > annotated. > It would be nice if pure functions had some metadata like :pure true. =) > > On Saturday, September 7, 2013 1:53:08 AM UTC+2, Chris-tina Whyte wrote: >> >> Interesting! >> >> Though it executes every function in order to find the matches, which is a >> little bit dangerous as Clojure doesn't enforce purity :( >> >> I wonder if it would be possible to improve it using the core.typed >> library and doing some kind of static analysis similar to Haskell's Hoogle >> to filter out candidates. >> >> On Thursday, September 5, 2013 6:23:28 PM UTC-3, Islon Scherer wrote: >>> >>> Hey guys, >>> >>> I don't know about you but when I was a beginner in Clojure (and it still >>> happens every now and then) I had a hard time finding functions using `doc` >>> or `find-doc`, >>> normally because I didn't remember the name of the function or because my >>> only clue was a generic name so find-doc would return too much results. But >>> one >>> thing I knew: what to expect of the function, I knew the inputs and the >>> outputs. That's why I decided to create wally, because sometimes you don't >>> know the name of the function you want but you know how it should behave. >>> >>> With wally you can tell the inputs and the output and it'll search for >>> functions that match those inputs/outputs. >>> >>> Ex: >>> >>>> user=> (find-by-sample {1 1, 2 3, 3 1, 4 2} [1 2 3 4 4 2 2]) >>>> ------------------------- >>>> clojure.core/frequencies >>>> ([coll]) >>>> Returns a map from distinct items in coll to the number of times >>>> they appear. >>> >>> >>>> user=> (find-by-sample '((1 2 3) (4 5)) (partial < 3) [1 2 3 4 5]) >>>> ------------------------- >>>> clojure.core/partition-by >>>> ([f coll]) >>>> Applies f to each value in coll, splitting it each time f returns >>>> a new value. Returns a lazy seq of partitions. >>> >>> >>> https://github.com/stackoverflow/wally > > -- > -- > 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/groups/opt_out. -- -- 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/groups/opt_out.