[concurrency-interest] Concurrency-interest Digest, Vol 37, Issue 7

David J. Biesack David.Biesack at sas.com
Thu Feb 7 14:10:39 EST 2008

> From: Mark Mahieu <mark at twistedbanana.demon.co.uk>
> Subject: [concurrency-interest] sr166y.forkjoin.Ops vs the world outside
> For the curious, I've written up a brief description of what I've  
> done so far at http://markmahieu.blogspot.com/ which includes links  
> to the javadoc and the prototype itself.
> Any comments would be most welcome.

You're right about "ouch" - 1828 interfaces!

Seems you can reduce the footprint some; all the *ToBoolean and *Predicate interfaces are duplicates

 BooleanAndShortToBoolean :: boolean op(boolean a, short b)   
 BooleanAndShortPredicate :: boolean op(boolean a, short b) 

for example.

However, you do not define any *WithException procedures or generators. What is the rationale for that?
I.e. why does the necessity for *WithException ops elsewhere not apply to procedures and generators?

But is seems removing the *WithException ops would be a good option to simplify things and instead push
RuntimeException handing into the frameworks.

Is it necessary to specialize on byte vs short vs int vs long parameters; seems like
implicit widening to int or long should suffice and you can eliminate a lot of combinations.
It seems sufficient for jsr166y.forkjoin.

> Mark

David J. Biesack     SAS Institute Inc.
(919) 531-7771       SAS Campus Drive
http://www.sas.com   Cary, NC 27513

More information about the Concurrency-interest mailing list