是否有相当于.net
的表达式树,其中JVM
的LINQ值很低?我想在Scala
中实现一些类似于LINQ的代码结构,我想知道是否还必须推出我自己的表达式树库。Java表达式树
更新: 我对linq等效本身并不感兴趣。 .net拥有大量表达式树工具,可以在运行时动态编译代码,从而可以从代码中调用代码。我想要承担的项目与数据库没有任何关系。表达式树提供了一种简单的方式来描述对数据进行操作的代码。
如果没有库,我认为其他选择是创建一个发出字节码的选项。
是否有相当于.net
的表达式树,其中JVM
的LINQ值很低?我想在Scala
中实现一些类似于LINQ的代码结构,我想知道是否还必须推出我自己的表达式树库。Java表达式树
更新: 我对linq等效本身并不感兴趣。 .net拥有大量表达式树工具,可以在运行时动态编译代码,从而可以从代码中调用代码。我想要承担的项目与数据库没有任何关系。表达式树提供了一种简单的方式来描述对数据进行操作的代码。
如果没有库,我认为其他选择是创建一个发出字节码的选项。
从2.10开始,Scala具有宏,它允许您在编译时访问其参数的抽象语法树:http://scalamacros.org/。以下是一些使用示例,包括LINQ草图:http://scalamacros.org/paperstalks/2013-12-02-WhatAreMacrosGoodFor.pdf。
对于JAVA尝试Quare(codehaus)。但是,只要JAVA不支持高阶函数(函数作为第一类成员),我不相信这些“库”会感受到真正的LINQ。 – 2009-09-25 21:09:57
史蒂夫 - 你有没有遇到过这种情况? – MalcomTucker 2010-07-06 17:18:19
不,我们刚回到窗户并使用窗户。对于一些我们在UNIX上使用LLVM和C++的东西。然而,我们正在隔离java的东西,并使用.NET来处理需要动态代码的所有东西。 – 2010-07-06 17:51:57