How does this compare to LINQ in .NET?
On Tuesday, November 1, 2016 at 2:03:44 PM UTC-5, Pavel Velikhov wrote:Hi David!I haven’t used blaze, but its looks quite similar to pandas, at least conceptually. Thanks forthe reference!The big difference with PythonQL is that we actually extend the syntax of Python with a fewconstructs that are typically used in query languages (group by, order by, window, let clause).The language extension is quite small and easy to grasp, but its very powerful: you can usethis language to easily formulate pretty complex queries is a rather simple way.So traditionally - a query language (PythonQL) is good at expressing complex things easily, butthen you need a lot of work from the optimizer and the database to turn it into an efficient plan. Alibrary like blaze or pandas is more of an “algebra” - its really a plan specification. It will usuallytake much longer to memorize all the operators and ways of doing things in such a library and typicallyyou have to go back to the documentation to do things that differ slightly from what you typically do.Oh yeah, so far our execution engine is pretty simple and not too efficient, but we plan to fix thisin the future and be at least comparable to pandas performance (need to look at what’ s under thehood in blaze).Of course this is my take (although I heard a few similar things from our early users). It would beinteresting to see how other folks compare the two approaches.Btw. we have built a library for working with pandas Dataframes, we could do it for blaze too, I suppose.On 1 Nov 2016, at 21:17, David Mertz <me...@gnosis.cx> wrote:
How do you see this as different from Blaze (http://blaze.readthedocs.io/
AOn Nov 1, 2016 1:34 AM, "Pavel Velikhov" <pavel.v...@gmail.com> wrote:Hi Folks,
We have released PythonQL, a query language extension to Python (we have extended Python’s comprehensions with a full-fledged query language,
drawing from the useful features of SQL, XQuery and JSONiq). Take a look at the project here: http://www.pythonql.org and lets us know what you think!
The way PythonQL currently works is you mark PythonQL files with a special encoding and the system runs a preprocessor for all such files. We have
an interactive interpreter and Jupyter support planned.
Python-ideas mailing list
Code of Conduct: http://python.org/psf/