So we announced Lambda Day rather prematurely. I had not actually ran
any of the lambdification tooling and once I did, I found that they all
produce lamdified code with compile errors. Most of the lamdified code
works, but the odd lamdification does not. Naively, we had assumed that
we could flip a switch and walk away lambdified. Silly us.
Now that we know code will need to be edited manually, we have decided
to lambdify components one at a time over the next month or so to better
allow us to control the process. The first component to be lamdified is
Samples, Mandelbrot and Ensemble8. But wait, Mandelbrot was already
lambdifed so no change there.
Since lamdification is such a pervasive change, we'll be announcing on
the list when components are going to change and coordinating with the
component owners. The JIRA that is tracking the work is
The good news is that the lambda flood gates are open in all
components. The Android and iOS ports have agreed to use RetroLambda to
keep their ports going. Remember though, use of the streams API and
other JDK8 library functionality like this will kill these ports so
these features cannot be used in shared code. In platform specific Java
code, there is no issue.
I was so happy and then the wind was taken out of my sails. Software has
let me down.