Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Better LINQ Integration #49

Closed
EntilZha opened this issue Nov 4, 2015 · 2 comments
Closed

Better LINQ Integration #49

EntilZha opened this issue Nov 4, 2015 · 2 comments
Labels

Comments

@EntilZha
Copy link
Owner

EntilZha commented Nov 4, 2015

Creating to discuss potential better LINQ integration for 0.6.0. From the milestone summery:

Another possible focus is on LINQ. This could take the form of implementing a limited SQL parser and optimizer using pyparsing. This might also be giving select, where, and related methods more definition. For example, if the LINQ functions are used using calls like select("atr").filter("atr == 1") be smarter about how they are executed. This is a wide open door, looking for thoughts and suggestions on what is of value. The basic concept is to start working on smarter ways of reading data, although this might tread into the territory of much more mature libraries like pandas its dataframes.

@EntilZha EntilZha added this to the 0.5.0 milestone Nov 4, 2015
@EntilZha EntilZha modified the milestones: 0.6.0, 0.5.0 Dec 14, 2015
@EntilZha
Copy link
Owner Author

After thinking about this more, this seems like it might be worth doing. It looks like the benefits could be:

  • Some brevity offered by SQL
  • Further differentiate capabilities of the package from other packages
  • It is an interesting problem and maybe it comes useful down the line for running on structured data.

I have been experimenting with pyparsing as I have time here and there. Code is in an ipython notebook gist with most of a SQL parser implementation complete.

Next steps will be:

  • Do more testing to make sure the parser works correctly
  • See if the SQL subset currently there is worth cutting down further
  • Implement a parsed SQL to ScalaFunctional transformations compiler (this is the hardest one and I need to read more to find what is the best way to do this).
  • Separate out different expressions so they can be used independently to parse some of the LINQ functions when the input is a string (query).

@EntilZha EntilZha modified the milestones: 0.7.0, 0.6.0 Mar 29, 2016
@EntilZha EntilZha modified the milestones: 1.0.0, 0.7.0 May 7, 2016
@EntilZha
Copy link
Owner Author

Closing this since it seems far off. I like the idea, but this will require writing a SQL parser/compiler which seems beyond the scope of just this project. If this happens it would be in a separate package and PyFunctional would use it as a library.

@EntilZha EntilZha removed this from the 1.0.0 milestone Dec 24, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant