drill-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Julian Hyde <julianh...@gmail.com>
Subject Re: Updates to logical operators
Date Thu, 29 Nov 2012 18:39:36 GMT
On Nov 29, 2012, at 8:48 AM, Ted Dunning <ted.dunning@gmail.com> wrote:

> The Janino API meant that the code
> required to compile an expression is tiny and to the point and evaluation
> of the expression is extremely easy.  The fact that the code goes directly
> to JVM byte codes means that all of the power of the JVM's JIT will be used
> to make the evaluations go fast.

I've been using Janino too. I'm a big fan. A positive that you didn't mention is its classloader
support: you don't need to worry about generating each statement into different namespaces
because the classloader makes the code go away when you're done with it.

I'll point out one negative. Janino has not been upgraded beyond the JDK 1.4 language level.
This means that you have to deal with autoboxing and generics yourself. This made the code
considerably more verbose. Janino's development activity is low, so I doubt that anyone will
upgrade it to use lambdas, extension methods and method handles.

View raw message