Hi David! I haven’t used blaze, but its looks quite similar to pandas, at least conceptually. Thanks for the reference! The big difference with PythonQL is that we actually extend the syntax of Python with a few constructs 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 use this 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, but then you need a lot of work from the optimizer and the database to turn it into an efficient plan. A library like blaze or pandas is more of an “algebra” - its really a plan specification. It will usually take much longer to memorize all the operators and ways of doing things in such a library and typically you 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 this in the future and be at least comparable to pandas performance (need to look at what’ s under the hood in blaze). Of course this is my take (although I heard a few similar things from our early users). It would be interesting 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
wrote: How do you see this as different from Blaze (http://blaze.readthedocs.io/en/latest/index.html http://blaze.readthedocs.io/en/latest/index.html)? A
On Nov 1, 2016 1:34 AM, "Pavel Velikhov"
mailto:pavel.velikhov@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 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.
Best regards! PythonQL team _______________________________________________ Python-ideas mailing list Python-ideas@python.org mailto:Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/ http://python.org/psf/codeofconduct/