Hi all,
currently the Eclipse JDT compiler was the only compiler that included
generic signatures for Lambda Expressions in class files which is
necessary to use them type-safe in Flink. Unfortunalely, this "feature"
was considered as a "bug" and had been thrown out with Eclipse 4.4.1.
This is why Lambdas do not work properly with the current version of
Eclipse. I have opened a bug for that (see
https://bugs.eclipse.org/bugs/show_bug.cgi?id=449063).
The question is: Independent of the decision of the Eclipse JDT team,
how do we want to deal with missing return type information?
Option 1)
Add a separate TypeInformation argument to each Java API operator. Leads
to blown up API...
.map((x)->x + 1, TypeInformation.fromString("Integer"))
.flatMap((in, out)->out.collect(in),
TypeInformation.fromClass(Integer.class))
Option 2)
Introduce a wrapper class which implements ResultTypeQueryable. Leads to
complicated syntax...
.map(TypeHint.map((x)->x + 1, "Integer"));
.map(TypeHint.map((x)->x + 1, Integer.class));
What are your opinions? Or any other ideas?
Regards,
Timo