Comments (4)
Once syntax has an initial decision, I can take up an ANTLR parser
from prql.
Thanks for opening the issue @qorrect !
My initial plan was to write a parser in nom
, which I've heard great things about and had good initial experiences with. As you can see, it's not much at the moment.
I think a formal grammar would be useful, and the language is developed enough to start on that if someone wants to have a go. I would vote to go for a PEG grammar given the language is relatively simple™, and if we pursue the nom route it'll be broadly compatible.
As ever, open to feedback! Thank you!
from prql.
Now that we're using pest, we have an analytical grammar to coordinate around.
My sense is that while some details are still evolving, the analytical spec is sufficient, and we can formalize when there's less evolution. But if anyone would benefit from changes (e.g. @qorrect depending on what's helpful for you if you're doing this in python), feel free to comment.
from prql.
With a formal grammar you could generate a syntax diagram #1810.
from prql.
Related Issues (20)
- Top with group on Postgres HOT 5
- `std.prql` module HOT 2
- Modules containing data (tables, relations) HOT 3
- Release plan for 0.11.1 HOT 2
- Nightly tests failed HOT 1
- Remove `std.prql_version` in favor of `std.prql.version` HOT 5
- Nightly tests failed HOT 4
- Grouping breaks `select * except` HOT 2
- Set up text "fixture" for CLI project tests
- Clickhouse DATETIME conversion invalid format HOT 4
- Zig tests started failing HOT 3
- The various exit status codes from `prqlc` HOT 2
- Python compiler needs a flag to return the full sequence of errors as json HOT 5
- Compiler panic with `sort` in inline join relation HOT 5
- Nightly tests failed HOT 1
- `**` operator (or something else) for `math.pow` HOT 1
- Nightly tests failed HOT 1
- Nightly tests failed HOT 1
- First-class functions
- Nightly tests failed
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from prql.