I've been playing with reducers recently, and I discovered what might be
a bug. The core of the problem can be seen here:

https://github.com/jballanc/scrabbler/blob/master/src/scrabbler/bruteforce.clj

In particular, if I attempt to replace the `r/reduce` call on line #23,
with a call to `r/fold`, I get the following crash:

https://gist.github.com/3420099

As far as I can tell, this is due to the check in `fjinvoke` on line
#47:

https://github.com/clojure/clojure/blob/master/src/clj/clojure/core/reducers.clj#L47

Since the `r/fold` I mentioned above would be called from within the
context of the `r/fold` on line #35
(https://github.com/jballanc/scrabbler/blob/master/src/scrabbler/bruteforce.clj#L35),
the code is already inside a ForkJoin pool. In other words, if I
understand this all correctly, it is not possible to `fold` inside of
another `fold`. This seems like a bug to me, but since I also just
started looking at reducers, perhaps I'm just not understanding how they
work?

Any ideas?

Thanks,

Josh



-- 
Joshua Ballanco

ELC Technologies™
1771 NW Pettygrove Street, Suite 140
Portland, OR, 97209
[email protected]

P +1 866.863.7365
F +1 877.658.6313
M +1 646.463.2673
T +90 533.085.5773

http://www.elctech.com

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to