Stream API from Java 8 rewritten on iterators for Java 7 and below.
- Functional interfaces (Supplier, Function, Consumer etc)
- Stream/IntStream/LongStream/DoubleStream (without parallel processing, but with a variety of additional methods and with custom operators)
- Optional/OptionalInt/OptionalLong/OptionalDouble classes
- Exceptional class - functional way to deal with exceptions
- Objects from Java 7