-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Collaborate with linq4j? #1
Comments
Hi Julian, For new features in Brennus, issues on Github are good. For a more informal chat I'd be happy to meet in person. |
Can you take a look at the net.hydromatic.linq4j.expressions package? Would you be willing to include all of that functionality? It has a model for most of the Java language syntax (and it really isn't that huge). I can see that you wouldn't want to commit to supporting the whole model in the builder. I think it would be acceptable if the builder supported less than the full model, and was extended as needed. |
My projects linq4j and optiq need to generate and execute Java, so I created some code similar to brennus. See the net.hydromatic.linq4j.expressions package:
https://github.com/julianhyde/linq4j/tree/master/src/main/java/net/hydromatic/linq4j/expressions
There are some differences; I use janino to compile, where brennus uses asm directly. I suspect that I need to generate more complex expressions (anonymous and inner classes, and soon lambdas). As far as i can tell, brennus can't "unparse" (generate java source code from a model). But of course brennus has nice builder classes.
Janino is a mixed blessing for me. It is mature and the bugs have all been worked out, for what it does. But it does not support newer features like generics, boxing/unboxing, and suspect it will not support lambdas.
What are your plans for brennus? Do you think it would be useful to pool our resources? What is your preferred communication channel?
Julian
The text was updated successfully, but these errors were encountered: