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!
- 1,065,567 hits
- Do you think, SQL injection cannot hit you? Think again. It'll most certainly hit you. Read this, now! buff.ly/1HcIsJ5 12 hours ago
- Read our lips. Do. Not. Use. Double. Curly. Brace. Anti. Pattern. DON'T! buff.ly/1ysu6cV 19 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 Common Mistakes Java Developers Make when Writing SQL
- 10 More Common Mistakes Java Developers Make when Writing SQL
- 10 Subtle Best Practices when Coding Java
- Don't be "Clever": The Double Curly Braces Anti Pattern
- The 10 Most Popular DB Engines (SQL and NoSQL)
- Java 8 Friday: 10 Subtle Mistakes When Using the Streams API
- Does Java 8 Still Need LINQ? Or is it Better than LINQ?
- Using SQL Injection Vulnerabilities to Dump Your Database
- Java 8 Friday: No More Need for ORMs
- How to Translate SQL GROUP BY and Aggregations to Java 8 January 23, 2015
- jOOQ Newsletter: January 21, 2015 – Groovy and Open Source – jOOQ and the strong Swiss Franc January 21, 2015
- Open Source Doesn’t Need More Support. It Needs Better Business Models January 21, 2015
- Suis-je Groovy? No! What Pivotal’s Decision Means for Open Source Software January 19, 2015
- Using Java 8 to Prevent Excessively Wide Logs January 19, 2015
- Infinite Loops. Or: Anything that Can Possibly Go Wrong, Does. January 16, 2015
- Transform Your SQL Data into Charts Using jOOQ and JavaFX January 8, 2015
- How to Emulate the MEDIAN() Aggregate Function Using Inverse Distribution Functions January 6, 2015
- The Awesome PostgreSQL 9.4 / SQL:2003 FILTER Clause for Aggregate Functions December 30, 2014
- Leaky Abstractions, or How to Bind Oracle DATE Correctly with Hibernate December 29, 2014