What version of Clojure are you using? 

This seems like a use case where transducers could help significantly in 
avoiding lazy effects and intermediate objects.

On Monday, November 17, 2014 4:28:12 AM UTC-6, Alexander L. wrote:
>
> Hi all,
>
> I understand that the following question is a long shot without any proper 
> proof/tests from my side but it's a little bit difficult to make a test 
> case from the specific part of my app so I will just ask anyway in case 
> anyone knows anything.
>
> The situation is like this: 
>
>    - I have a hashmap with *3386* items that I pass through few functions 
>    in order to append new keys or update existing ones to each hashmap entry.
>    - Each hashmap item has 20 keys with various data types (mostly 
>    strings)
>    - All my transformation functions use `reduce`.
>
> The problem:
>
> I have a top level function which I inside it I call 7 other functions 
> (all written by me) and for some reason I haven't discovered is that it 
> needs around 2 seconds to return a result even though the items aren't many.
> Now, i used `time` to benchmark each function and when I found which one 
> is taking a lot of time to return, after I removed it, I discovered that 
> the problem still existed but now moved on to a different function.
>
> I did a bunch of tests with those 3386 on the REPL and reduce but I didn't 
> notice anything weird/slow so it must be a combination of things. Also, i 
> doubt that this is a RAM problem, i have allocated 4GB for the JVM. 
>
> So, my question is, has anyone every seen a situation like this with a 
> bunch of `reduce` calls? Is there anything at all that I should check and 
> maybe missed it? 
>
> Regards
>
> Alex
>

-- 
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.

Reply via email to