是否有相當於.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