When will we have LINQ in Java?
LINQ is one of Microsoft’s .NET Framework’s most distinct language features. When it was first introduced to languages such as C#, it required heavy changes to the language specification. Yet, this addition was extremely powerful and probably unequalled by other languages / platforms, such as Java, Scala, etc. Granted, Scala has integrated XML in a similar fashion into its language from the beginning, but that is hardly the same accomplishment. Nowadays, Typesafe developers are developing SLICK – Scala Language Integrated Connection Kit, which has similar ambitions, although the effort spent on it is hardly comparable: one “official” Scala developer against a big Microsoft team. Let alone the potential of getting into patent wars with Microsoft, should SLICK ever become popular.
What does Java have to offer?
There are many attempts of bringing LINQ-like API’s to the Java world, as the following Stack Overflow question shows:
Here’s another newcomer project by Julian Hyde, that I’ve recently discovered:
He tried his luck on the lambda-dev mailing list, without any response so far. We’re all eagerly awaiting Java 8 and project lambda with its lambda expressions and extension methods. But when will we be able to catch up with Microsoft’s LINQ? After all, jOOQ, linq4j are “internal domain specific languages”, which are all limited by the expressivity of their host language (see my previous blog post about building domain specific languages in Java).
Java 9 maybe? We can only hope!
That was awesome, right? Share it with your friends!
- 674,699 hits
- jOOQ Newsletter: September 02, 2014 - Do You Really Need Support? - eepurl.com/2hNmD 13 hours ago
- Were you aware of the fact that you can get 20% off all jOOQ licenses when you do not want support from Data Geekery? buff.ly/1x5HIQN 14 hours ago
Get Back in Control of Your SQL
Top Posts & Pages
- SQL Trick: row_number() is to SELECT what dense_rank() is to SELECT DISTINCT
- 10 More Common Mistakes Java Developers Make when Writing SQL
- The 10 Most Popular DB Engines (SQL and NoSQL)
- 10 Subtle Best Practices when Coding Java
- 10 Common Mistakes Java Developers Make when Writing SQL
- Does Java 8 Still Need LINQ? Or is it Better than LINQ?
- Awesome SQL Trick: Constraints on Views
- Top 10 Very Very VERY Important Topics to Discuss
- Probably the Coolest SQL Feature: Window Functions
- Stop Trying to Emulate SQL OFFSET Pagination with Your In-House DB Framework!
- Awesome SQL Trick: Constraints on Views September 2, 2014
- jOOQ Newsletter: September 02, 2014 – Do You Really Need Support? September 2, 2014
- PL/SQL backtraces for debugging August 29, 2014
- Integrating jOOQ with PostgreSQL: Partitioning August 26, 2014
- All You Ever Need to Know About Recursive SQL August 18, 2014
- jOOQ Newsletter: August 15, 2014 – jOOQ 3.5 Outlook August 15, 2014
- A Wonderful SQL Feature: Quantified Comparison Predicates (ANY, ALL) August 14, 2014
- The Difference Between ROW_NUMBER(), RANK(), and DENSE_RANK() August 12, 2014
- The “Free”, “Standard”, “Open” Software Heresy August 11, 2014
- SQL Tip of the Day: Be Wary of SELECT COUNT(*) August 8, 2014