4 ms·
The point of LINQ is that it isn't like java streams, it gets to decide where to "where". Java streams read data from spinning rust and then does the selection
by Arnt 8y ago
The point of LINQ is that it isn't like java streams, it gets to decide where to "where".
Java streams read data from spinning rust and then does the selection in RAM. LINQ can send the "where" to the RDBMS and the RDBMS can use an index/btree lookup to read just the data needed where java streams would read umpty megabytes.
https://news.ycombinator.com/item?id=17414383 https://news.ycombinator.com/item?id=17414383 BTW
- Arcsech 8y agoYeah, I get that, but this library doesn't appear to be doing that. It seems like it's replicating the facade of LINQ, but not the "hard" parts such as switchable backends, which isn't useful since we already have Streams to handle that use case.
- Arnt 8y agoIt replicates the API and provides a distinctly primitive implementation of that API. By contrast java streams provides an API that can never, ever be implemented in such a way as to issue a clever SQL select. I don't know whether the JINQ people plan to write a good query generator. But if I were the maintainer, my plan would definitely be to focus on the API first and only then work on optimal backend implementation(s).