This week in the repo
Brian Goetz
brian.goetz at oracle.com
Fri Nov 16 17:38:10 PST 2012
Again, more than a week since an update...but lots of updates!
Oct 30-Nov 16
Merge Traversable into Iterable (Brian). Having a separate "Traversable
extends Iterable" no longer added value.
Cleanup on Optional (Brian). Move all construction to factories
(empty() and of(value)); add ifPresent(Block).
Remove INFINITE_SIZE flag (Paul.) Nothing was acting on it.
More Spliterator implementations (Mike). Serial and parallel
implementations of Spliterator for ArrayList and Vector.
Integration from JUC (Mike). Now uses default FJ pool.
Addition of Iterator.forEach (Brian).
More lambdafied getAndUpdate/updateAndGet methods for Atomics (Brian).
First round had left out the AtomicXxxFieldUpdaters.
Major cleanup of API used to build Streams (Brian and Paul.) Mostly
Streams.stream(...) and Arrays.{stream,parallel,iterator,spliterator} now.
Removal of StreamAccessor (Paul). Spliterator is enough, no need for a
separate abstraction.
Explicit unordered() op (Paul). This allows a stream that has an
encounter order (e.g., a List) but doesn't care about the order to
instruct downstream ops to ignore order, allowing potentially more
efficient execution.
More parallel implementations (Brian). Now all ops have a parallel
implementation! Though some could be improved.
More point lambdafication. Added BufferedReader.lines(), more
Comparators support, static helper methods that can be converted with
method refs (e.g., Intger::sum), log(Level, Supplier<String>).
New slice() op (Brian). Combination of limit and skip. Consolidated
implementation of LimitOp/SkipOp into SliceOp.
First cut at primitive streams (Paul.) Added IntStream with
implementation of basic int ops.
Renames of SAMs (Mike.)
As you've seen, we've been starting the process of reviewing the chunks
that have fewest dependencies. So first was the SAMs, then pieces like
Comparators and Spliterator, etc. We'll be putting each chunk back to
the jdk8 repos as each chunk is reviewed.
More information about the lambda-libs-spec-observers
mailing list