A fast JSON serializer

2016-09-14 Thread Remi Forax
Another idea from the JVM Summit, because the JDK9 now uses fast string concatenation by default, a JSON serializer based on reflection can be outperformed by a hand written code. The following code is a small JSON serializer that use the StringConcatFactory of JDK9 https://gist.github.com/f

Making the loop combinator fast !

2016-09-14 Thread Remi Forax
One idea i've got during the JVM Summit, here is a code that implements the Stream.filter/map/reduce operations using the new loop method handle, https://gist.github.com/forax/b5257dfac85e74335e02b5a6b95c9182 Currently, the code that use method handles is far slower than the java.util.stream.S

MethodHandle loop body parameters and Stream.reduce accumulator parameters are not in the same order

2016-09-14 Thread Remi Forax
Hi everybody, i've just found that the parameters of the body (a MethodHandle) of MethodHandles.countedLoop (both overloads) and iteratedLoop are not in the same order as the accumulator in methods Stream.reduce, given that they conceptually represent the same thing, i think the first two parame